Deploy tracking
Record your releases on the traffic chart and correlate deploys with changes in your metrics.
Deploy tracking puts a marker on your traffic chart every time you ship, so you can see — at a glance — whether a release moved your numbers. No more guessing what changed on the day traffic or conversions shifted.
Deploy tracking is available on the Agency plan.
How it works
Your CI/CD pipeline sends a small POST request to Ometra after each deploy. Ometra records it and draws a marker (a 🚀 pin) on that day's spot on the traffic chart. Click a marker to see the label, environment, commit, and a link to the deploy.
Nothing about your visitors is involved — a deploy record is just a timestamped note about your release.
Get your endpoint and secret
- Open your site, then go to Settings → Deploys.
- Click Generate deploy secret. Ometra creates a private secret unique to this site.
- Copy the ready-made
curlcommand — it already includes your endpoint and secret.
The endpoint looks like this:
POST https://ometra.io/api/sites/<your-site-id>/deploys
Authorization: Bearer <your-deploy-secret>
Keep the secret private — it authorizes deploy markers for this site. You can rotate it anytime with Regenerate.
Send a deploy
The copyable command from the Deploys tab looks like this:
curl -X POST "https://ometra.io/api/sites/<your-site-id>/deploys" \
-H "Authorization: Bearer <your-deploy-secret>" \
-H "Content-Type: application/json" \
-d '{"environment":"production","sha":"'"$(git rev-parse HEAD)"'","label":"Deploy '"$(git rev-parse --short HEAD)"'"}'
Drop it into a GitHub Action, a GitLab CI job, a Vercel/Netlify deploy hook, a Coolify post-deploy step — anywhere that runs after a successful deploy. One endpoint works for every provider.
Example: GitHub Actions
- name: Notify Ometra of deploy
env:
OMETRA_DEPLOY_SECRET: ${{ secrets.OMETRA_DEPLOY_SECRET }}
run: |
curl -X POST "https://ometra.io/api/sites/YOUR_SITE_ID/deploys" \
-H "Authorization: Bearer $OMETRA_DEPLOY_SECRET" \
-H "Content-Type: application/json" \
-d "{\"environment\":\"production\",\"sha\":\"$GITHUB_SHA\",\"label\":\"Deploy ${GITHUB_SHA:0:7}\"}"
Store the secret as a repository secret named OMETRA_DEPLOY_SECRET — never commit it. Replace YOUR_SITE_ID with the id from your Deploys tab.
Payload fields
Every field is optional; an empty POST still records a deploy at the current time.
| Field | Description |
|---|---|
label |
Short title shown on the marker. Defaults to the short commit sha. |
sha |
Full commit hash. The first characters show in the popover. |
ref |
Branch or tag (e.g. main, v2.3.0). |
environment |
e.g. production, staging. |
url |
A link to the deploy (CI run, release page). |
timestamp |
ISO 8601 or epoch millis. Defaults to when Ometra receives the request. |
Webflow
If your site is built on Webflow, you don't need a CI pipeline — connect Webflow once and every publish is pinned automatically. Nothing is added to your site's code.
- In Webflow, go to Site settings → Apps & integrations → API access and generate a site API token.
- In Ometra, open your site → Settings → Deploys, find the Webflow panel, and paste the token.
- That's it. Ometra registers a publish webhook with Webflow for you. Every time you hit Publish in Webflow, a marker labeled "Published via Webflow" appears on your traffic chart.
The connection is server-to-server — your visitors never see it, and it's separate from the Ometra tracking script that already counts your traffic. To stop it, click Disconnect in the same panel and Ometra removes the webhook.
Good to know
- Deduped. If your pipeline retries, the same commit within a short window is recorded once. Webflow publishes are deduped too — Webflow fires once per published domain, so you get a single marker.
- Rate-limited. A misconfigured loop is throttled, so it can never overwhelm your dashboard.
- Markers follow your timezone. Deploys land on the correct day in your site's display timezone.