diff --git a/main.py b/main.py
index defbe3eafe70db305d12900dd90653cd834132f4..4b46a596e6a2fa9ae113dcb1e0fc62478e8783ab 100644
--- a/main.py
+++ b/main.py
@@ -277,7 +277,17 @@ class page():
         tab2_layout = column(self.title, self.upload_widget, self.valid_units_message, self.invalid_units_message, self.invalid_units_list)
         tab2 = TabPanel(child=tab2_layout, title="XML Unit Validator")
 
+
+        # Handle URL parameter active tab
         tabs = Tabs(tabs=[tab1, tab2])
+        try:
+            active_tab = int(curdoc().session_context.request.arguments["active_tab"][0])
+        except:
+            active_tab = 0
+        if active_tab >= len(tabs.tabs):
+            active_tab = 0
+        tabs.active=active_tab
+
         curdoc().add_root(tabs)
 
     def process_xml(self, attr, old, new):