tutorial

Fathom Analytics Monitoring with Vigilmon: Uptime & Privacy-First Tracking Stack

Monitor your Fathom Analytics integration and self-hosted instance with Vigilmon — ensure your privacy-first analytics are always collecting data and your tracking script is always reachable.

Your Fathom script is returning a 503. Every visitor to your site is loading a broken analytics snippet. Your pageview count drops to zero — but your traffic is fine. You don't notice for three days.

Fathom Analytics is a privacy-first web analytics platform that replaces Google Analytics with a GDPR-compliant, cookie-free alternative. Whether you use Fathom Cloud or run Fathom Lite on your own server, the tracking script it serves to your visitors is mission-critical for your data collection. Vigilmon monitors that script's reachability, your dashboard's uptime, and your entire analytics stack — so you know immediately when data collection silently stops.

This tutorial covers monitoring Fathom Analytics with Vigilmon.

What You'll Build

  • A Vigilmon HTTP monitor on the Fathom tracking script endpoint
  • A dashboard availability monitor (for Fathom Cloud or self-hosted)
  • A keyword monitor to detect script delivery failures
  • Alert channels to your team

Prerequisites

  • A Fathom Analytics account (Cloud) or a self-hosted Fathom Lite instance
  • A free account at vigilmon.online

Step 1: Monitor the Fathom Tracking Script

The Fathom tracking script (script.js) is loaded by every page on your site. If this endpoint goes down, your analytics silently stop collecting — no error messages, just missing data.

For Fathom Cloud, the script URL is:

https://cdn.usefathom.com/script.js

For Fathom Lite (self-hosted), the script is served from your own domain:

https://analytics.yourcompany.com/tracker.js

Test it:

curl -I https://cdn.usefathom.com/script.js

Expected response:

HTTP/2 200
content-type: application/javascript

Set up the Vigilmon monitor:

  1. Log in to Vigilmon and click New Monitor → HTTP.
  2. Set URL to your Fathom script URL.
  3. Set Check interval to 60 seconds.
  4. Set Expected status code to 200.
  5. Under Advanced → Keyword check:
    • Keyword present: "fathom" or "tracker"
  6. Save the monitor.

Vigilmon now verifies that the tracking script is reachable and contains valid JavaScript every minute from multiple global regions.


Step 2: Monitor Your Fathom Dashboard

Fathom Cloud users: Monitor the Fathom dashboard to catch platform outages that prevent you from accessing your analytics data.

  1. Click New Monitor → HTTP in Vigilmon.
  2. Set URL to https://app.usefathom.com/.
  3. Set Check interval to 5 minutes.
  4. Set Expected status code to 200.
  5. Under Advanced → Keyword check:
    • Keyword present: "Fathom"
  6. Save.

Fathom Lite (self-hosted) users: Monitor your own dashboard instance:

  1. Click New Monitor → HTTP in Vigilmon.
  2. Set URL to https://analytics.yourcompany.com/ (your Fathom Lite domain).
  3. Set Expected status code to 200.
  4. Under Advanced → Keyword check:
    • Keyword present: "Fathom"
    • Keyword absent: "502", "Bad Gateway"
  5. Save.

Step 3: Monitor the Fathom Beacon Endpoint (Self-Hosted)

For self-hosted Fathom Lite, the tracker sends collected pageview data to a beacon endpoint. If this endpoint is unreachable, the script loads but no data is recorded.

The default beacon endpoint in Fathom Lite is at the same origin as the tracker:

curl -I https://analytics.yourcompany.com/collect

Set up a monitor:

  1. Click New Monitor → HTTP in Vigilmon.
  2. Set URL to https://analytics.yourcompany.com/collect.
  3. Set Expected status code to 200 or 405 (Method Not Allowed — GET to a POST-only endpoint is acceptable and confirms the endpoint exists).
  4. Save.

Step 4: Verify SSL Certificate Health

Fathom's tracking script is loaded over HTTPS. An expired TLS certificate will cause browsers to block the script entirely — your analytics will stop silently, and there will be no error in your own application logs.

For self-hosted Fathom Lite:

  1. Open your Fathom tracker monitor in Vigilmon.
  2. Under SSL, enable Certificate expiry alert.
  3. Set the threshold to 21 days before expiry.

For Fathom Cloud, Fathom manages TLS on cdn.usefathom.com and app.usefathom.com. Vigilmon still tracks it — if Fathom's CDN has a certificate issue, you'll know before your visitors' browsers start blocking the script.


Step 5: Monitor Your Site's Fathom Integration

In addition to monitoring Fathom's own endpoints, you can verify that your site is correctly loading the Fathom script by monitoring your site's HTML for the expected script tag.

  1. Click New Monitor → HTTP in Vigilmon.
  2. Set URL to https://yoursite.com/ (your homepage or a key landing page).
  3. Set Expected status code to 200.
  4. Under Advanced → Keyword check:
    • Keyword present: "usefathom.com" (or your self-hosted analytics domain)
  5. Save.

This confirms that your site's HTML still includes the Fathom script tag. It catches cases where a deployment accidentally removes or breaks the analytics snippet.


Step 6: Alert Channels

Go to Notifications → New Channel in Vigilmon and configure:

  • Email — immediate alerts when the tracking script becomes unreachable
  • Webhook — post to Slack or Discord

A Slack notification when Fathom's script goes down:

🔴 DOWN: cdn.usefathom.com/script.js (HTTP 503)
Check: Fathom Tracking Script
Region: EU-West
Duration: 5 minutes
Triggered: 2026-07-03 14:22 UTC

Recovery:

✅ RECOVERED: cdn.usefathom.com/script.js
Downtime: 12 minutes

Step 7: Status Page

Go to Status Pages → New Status Page in Vigilmon. Add your Fathom monitors and publish. This gives your team a clear view of your analytics stack health during incidents.


What You've Built

| Failure scenario | How Vigilmon catches it | |---|---| | Fathom Cloud outage | Dashboard monitor detects non-200 | | CDN serving tracking script goes down | Script URL monitor detects 5xx or timeout | | Self-hosted Fathom process crash | Dashboard and tracker monitors both fail | | Beacon endpoint unreachable (self-hosted) | /collect monitor returns non-200 | | TLS certificate expiry (self-hosted) | SSL monitor alerts before expiry | | Your site lost the Fathom snippet | Site keyword monitor no longer finds script tag | | Reverse proxy misconfiguration | Tracker URL returns 502 |


Fathom's privacy-first design means you don't get to rely on third-party "was my script loaded?" reports from your visitors' browsers. Vigilmon fills that gap with external, continuous monitoring of every endpoint in your Fathom analytics stack.

Start monitoring your Fathom integration today — register free at vigilmon.online.

Monitor your app with Vigilmon

Free plan — 5 monitors, no credit card required. Up and running in 60 seconds.

Start free →