Tech Stack Guides

How to Tell If a Website Uses Fathom Analytics

Fathom is a privacy-first, cookieless analytics tool. Detect it via the cdn.usefathom.com/script.js library, the data-site attribute, the window.fathom object and its cookieless beacons.

StackOptic Research Team27 May 20266 min read
Detecting Fathom Analytics via its script.js library and data-site attribute

Fathom Analytics is, alongside Plausible, one of the leading privacy-first, cookieless alternatives to Google Analytics. To tell whether a site uses it, the fastest checks are to look for a script from cdn.usefathom.com/script.js carrying a data-site attribute, or to type fathom into the browser console. This guide covers every reliable signal, the cookieless mechanics behind them, and what the find reveals.

What is Fathom Analytics?

Fathom is a simple, privacy-focused web analytics product built as a deliberate alternative to Google Analytics. Like Plausible, it is cookieless (no persistent identifiers, no analytics cookie banner needed), lightweight (a tiny script), and run by an independent company that sells software rather than data. It presents the core metrics — visitors, page views, referrers, top content, device and country breakdowns — on a single clean dashboard, and markets itself heavily on GDPR, CCPA and PECR compliance.

Because Fathom is a paid, conscious choice over free Google Analytics, its presence is meaningful. It is especially popular with developers, indie makers, creators, newsletter writers, agencies and privacy-minded small businesses. Many of its users are vocal about data ethics, so a Fathom install often signals a team that treats privacy as a value rather than a checkbox.

How Fathom loads and sends data

A Fathom install adds a single script tag — typically <script src="https://cdn.usefathom.com/script.js" data-site="ABCDEFGH" defer></script> — where the data-site attribute holds the short alphanumeric site code. When the page loads, the script sends a small beacon recording the page view, with no cookie and no persistent identifier. For custom events, Fathom exposes a global window.fathom object with fathom.trackPageview() and fathom.trackEvent() methods.

One important wrinkle: Fathom heavily promotes custom-domain tracking, where you point a subdomain of your own site (for example stats.example.com) at Fathom so the script and beacon load first-party. This is specifically designed to evade ad blockers, and it means the obvious cdn.usefathom.com host may be absent. In those cases the data-site attribute, the window.fathom object and the cookieless beacon pattern are your most portable signals.

How to tell if a website uses Fathom

1. View the page source. Search for fathom or usefathom. The giveaway is a script tag from cdn.usefathom.com/script.js (or a custom subdomain) with a data-site attribute.

2. Check the Network tab. Filter for fathom or usefathom. You will see the script.js download and a small beacon recording the page view. On custom-domain installs, look for an equivalent first-party script and beacon.

3. Use the console. Type fathom and press Enter. A Fathom-enabled page returns the window.fathom object exposing trackPageview and trackEvent. This works even when the host is a custom domain.

4. Inspect cookies — and note their absence. Like Plausible, Fathom sets no analytics cookies, so a beacon with no tracking cookies is part of the signature.

5. Read the data-site code. It identifies the property and confirms a live configuration.

What the Fathom signals look like

<script src="https://cdn.usefathom.com/script.js" data-site="ABCDEFGH" defer></script>
GET https://cdn.usefathom.com/...   (cookieless page-view beacon)
window.fathom = { trackPageview: ƒ, trackEvent: ƒ, ... }
(no analytics cookies set)

The pairing of the script.js with a data-site attribute and the window.fathom object — with no cookies — is conclusive.

Fathom versus similar tools — avoiding false positives

Match the exact fingerprint within the cookieless category. Fathom uses cdn.usefathom.com/script.js and a data-site attribute; Plausible uses plausible.io/js/script.js and a data-domain attribute with an /api/event POST; Simple Analytics uses scripts.simpleanalyticscdn.com. They are philosophically similar but differ in script host and data attribute (data-site vs data-domain). The big practical trap is custom-domain tracking: a Fathom install routed through stats.example.com will not show usefathom.com at all, so do not conclude "no analytics" just because the obvious host is missing — check for the window.fathom object and the cookieless beacon.

How reliable is each Fathom signal?

The window.fathom object is definitive and especially valuable because it survives custom-domain routing. The cdn.usefathom.com/script.js with a data-site attribute is equally strong when present. The cookieless page-view beacon is conclusive when you can attribute it. The "no cookies" observation corroborates but does not prove on its own. A static script reference without the beacon firing is the weakest signal. Because custom-domain installs hide the host, lean on the window.fathom global as your most reliable check.

What a Fathom install reveals about a company

Fathom adoption is a strong values-and-stack signal. It tells you the team chose to pay an independent vendor for cookieless, privacy-respecting analytics rather than use Google's free product — a decision usually made by developers, creators, agencies and privacy-conscious founders. That audience tends to care about data ethics, page performance and avoiding "big tech" dependencies, which makes a Fathom install a cultural fit signal if you sell privacy tooling, developer products, ethical-marketing services or consent management. As with Plausible, Fathom often sits within a fast, modern, low-tracking stack, so the rest of the site usually reinforces the privacy-first picture.

Fathom in a privacy-first stack

Fathom typically anchors a deliberately lean, privacy-respecting setup. Expect to find it alongside modern frameworks or static site generators, edge hosting (Cloudflare, Vercel, Netlify), few or no advertising pixels, and often no analytics cookie banner — because cookieless analytics may not require one. The presence of custom-domain tracking is itself a sophistication signal: the team cared enough about data completeness to set up first-party routing. For an auditor, record the site code, whether the install uses the default CDN or a custom domain, and whether the wider stack matches the privacy-first pattern; together these reveal both the tool and the team's philosophy.

A quick Fathom confirmation walkthrough

Open the site with developer tools on the Console panel and type fathom — the returned object with trackPageview and trackEvent confirms the install regardless of host. Switch to the Network tab, filter for fathom or your suspected custom subdomain, and reload to see the script and the page-view beacon. In the Elements panel, find the script tag and read its data-site attribute. Finally, check the Application panel to confirm no analytics cookies are set. The window.fathom object alone is usually enough, which is why it is the go-to check for ad-blocker-evading custom-domain installs.

A quick Fathom detection checklist

  • Type fathom in the console; the window.fathom object is the most portable signal.
  • Filter the Network tab for usefathom (or the site's custom stats subdomain).
  • Search the source for a script.js tag with a data-site attribute.
  • Confirm no analytics cookies are set — the cookieless pattern is a signature.
  • Watch for custom-domain routing that hides the usefathom.com host.
  • Note the data-site code to identify the property.

Why detecting Fathom matters across teams

For sales and prospecting, a Fathom install is a sharp qualifying signal. The team has paid an independent vendor for cookieless analytics, so it has already declared a privacy-first stance — ideal for anyone selling consent management, GDPR consulting, privacy-respecting advertising alternatives, or developer and creator tools. Because Fathom is popular with indie makers, newsletter writers and small agencies, it also pairs well with outreach for solo-founder and creator-economy products.

For agencies and consultants, finding Fathom reframes the engagement. You can lead with privacy-compliant measurement and performance rather than a generic GA build, and you can offer to set up custom-domain tracking, event tracking or dashboards the client may not have configured. The presence of custom-domain routing in particular tells you the client is sophisticated about data completeness, so you can pitch at a higher level.

For competitive research, a rival on Fathom is making a brand statement about privacy and independence; weigh that when positioning your own data story. And for migration or diligence work, Fathom signals a deliberately lean, cookieless data model — easy on consent but lighter on historical depth and advanced segmentation than an enterprise platform. Knowing that up front lets you set realistic expectations about what analytics history will and will not transfer, and whether a heavier tool is justified by the company's actual reporting needs.

Detecting Fathom at scale

One page is a quick console check. To find privacy-first sites across a prospect list, automate it. StackOptic detects Fathom — including custom-domain installs that evade most scanners — and thousands of other technologies from a real browser, so you can build a list of cookieless, privacy-aligned companies in minutes rather than checking each by hand. Re-running such a scan periodically also surfaces switches into or out of Fathom, which can be a timely outreach trigger. See how to find out what analytics a website uses and the Fathom profile for more.

Frequently asked questions

What is the fastest way to detect Fathom?

Open the Network tab, reload and filter for 'fathom' or 'usefathom'. You will see a script load from cdn.usefathom.com/script.js carrying a data-site attribute, and a small beacon recording the page view. The script with a data-site code is definitive.

What is the data-site attribute in Fathom?

Fathom's script tag includes a data-site attribute set to a short alphanumeric site code, for example data-site="ABCDEFGH". It tells Fathom which property the events belong to. Spotting a Fathom script with a data-site code is one of the cleanest confirmations.

Does Fathom set cookies?

No. Like Plausible, Fathom is cookieless and uses no persistent identifiers, which underpins its GDPR and privacy positioning. You will not find tracking cookies, so confirm Fathom via the cdn.usefathom.com script, the data-site attribute and the window.fathom object instead.

Why might Fathom load from a custom domain?

Fathom offers custom-domain tracking so the script and beacon load from a subdomain of the site itself, which prevents ad blockers from blocking analytics. In that case the cdn.usefathom.com host is hidden, so rely on the data-site attribute, the window.fathom object and the cookieless beacon pattern.

What does using Fathom say about a company?

Fathom is a privacy-first, cookieless, simple alternative to Google Analytics, popular with developers, creators, agencies and privacy-minded businesses. Its presence signals a team that deliberately prioritised visitor privacy and simplicity, and that was willing to pay for an independent tool rather than use Google's free product.

Analyse any website with StackOptic

Get the full technology stack, performance, security and SEO report in seconds — free.

Analyse a website

Related articles