diff --git a/gstlal-calibration/share/O3/calibration.yml b/gstlal-calibration/share/O3/H1_calibration.yml
similarity index 95%
rename from gstlal-calibration/share/O3/calibration.yml
rename to gstlal-calibration/share/O3/H1_calibration.yml
index c8f25536709ffe19e3133a68ad141feda7d4177a..c6b0a800243aa7a2ea545171b8ee8bdf3e310bda 100644
--- a/gstlal-calibration/share/O3/calibration.yml
+++ b/gstlal-calibration/share/O3/H1_calibration.yml
@@ -12,7 +12,7 @@ dashboard:
 
 plots:
   # latency history
-  - title: Latency at various stages for H1_HOFT_TEST
+  - title: Latency at various stages for H1 h(t) data production
     type: TimeSeries
     measurement: H1_latency
     schema:
@@ -54,7 +54,7 @@ plots:
     value: checked
 
   # state vector checks
-  - title: 'State vector check: monitor_on'
+  - title: 'H1 state vector check'
     type: TimeSeries
     measurement: H1_statevector_bit_check
     schema:
diff --git a/gstlal-calibration/share/O3/L1_calibration.yml b/gstlal-calibration/share/O3/L1_calibration.yml
new file mode 100644
index 0000000000000000000000000000000000000000..26205c20816d256da24f36bad821b1e3fbbe8ee7
--- /dev/null
+++ b/gstlal-calibration/share/O3/L1_calibration.yml
@@ -0,0 +1,117 @@
+# configuration file for monitoring
+dashboard:
+  title: GstLAL Calibration Monitoring
+  image: https://ldas-jobs.ligo.caltech.edu/~gstlalcbc/static/gstlal.png
+  tabs:
+    - name: Docs
+      url: https://lscsoft.docs.ligo.org/gstlal
+    - name: Git
+      url: https://git.ligo.org/lscsoft/gstlal
+  gps: -30
+  duration: 600
+
+plots:
+  # latency history
+  - title: Latency at various stages for L1 h(t) data production
+    type: TimeSeries
+    measurement: L1_latency
+    schema:
+      column: data
+      aggregate: max
+      tag: stage
+      tag_key: stage
+      stage:
+        - src
+        - res
+        - hoft
+        - hoft_cleaned
+        - ctrl
+        - calibstatevec
+        - sink
+    layout:
+      yaxis:
+        title:
+          text: Latency [s]
+      margin:
+        l: 60
+        r: 0
+        t: 10
+        b: 20
+      font:
+        family: "'Nunito', sans-serif"
+        size: 14
+        color: '#666'
+      plot_bgcolor: 'rgba(0,0,0,0)'
+      paper_bgcolor: 'rgba(0,0,0,0)'
+    data_options:
+      #marker:
+      #  color: 'rgb(255, 0, 0)'
+    grid:
+      x: 0
+      y: 0
+      h: 3
+      w: 12
+    value: checked
+
+  # state vector checks
+  - title: 'L1 state vector check'
+    type: TimeSeries
+    measurement: L1_statevector_bit_check
+    schema:
+      column: data
+      aggregate: max
+      tag: check
+      tag_key: check
+      check:
+        - monitor_on
+        - TDCFs_valid
+    layout:
+      yaxis:
+        title:
+          text: 
+      margin:
+        l: 60
+        r: 0
+        t: 10
+        b: 20
+      font:
+        family: "'Nunito', sans-serif"
+        size: 14
+        color: '#666'
+      plot_bgcolor: 'rgba(0,0,0,0)'
+      paper_bgcolor: 'rgba(0,0,0,0)'
+    data_options:
+      #marker:
+      #  color: 'rgb(255, 0, 0)'
+    grid:
+      x: 0
+      y: 3
+      h: 3
+      w: 12
+    value: checked
+
+nagios:
+  heartbeat:
+    lookback: 180
+    measurement: L1_strain_dropped
+    column: data
+    aggregate: max
+    alert_type: heartbeat
+    alert_settings:
+      tag_type: job
+      tag_format: 4digit
+      num_tags: 856
+
+measurements:
+  latency_history:
+    tag: job
+    num_tags: 856
+    default: 1e3
+    transform: none
+
+backends:
+  default:
+    backend: influxdb
+    db: gstlal_calibration
+    hostname: influxdb.ligo.caltech.edu
+    port: 8086