Skip to content
New storyWe built Skald to count visitors. It caught an AI-key thief.
SkaldEvery visit, truly told.

Compare · PostHog

Skald vs PostHog: what happens in the app, and what reaches the server

Skald vs PostHog is product analytics beside log analytics. PostHog follows what people do inside your app. Skald reads your server's log, so it sees every request, including the AI crawlers and scanners no SDK meets.

Skald vs PostHog compares two kinds of analytics. PostHog runs a JavaScript SDK in your pages and records events, funnels, paths and retention. Skald reads the access log your server already writes and sorts every request into five groups that add up to the log: people, AI assistants, search engines, bots and scanners, and your own traffic.

30-day free trial · no card · we set it up within one working day · free to self-host

one minute · samplewho saw it
  1. 09:14:02 198.51.100.7 "GET /app/" · runs the SDKSDK and log
  2. 09:14:03 198.51.100.7 clicked "Invite team"SDK event
  3. 09:14:06 203.0.113.24 "GET /pricing/" "GPTBot/1.2"log only
  4. 09:14:08 198.51.100.140 "GET /docs/setup/" "Claude-User"log only
  5. 09:14:11 192.0.2.77 "GET /.env" 404log only

Sample lines. An SDK sees what people do in the page. The server log sees every request, people and machines.

[01] question by question

Skald vs PostHog, question by question

Pick what you need to know. The table lights those questions and shows how PostHog and Skald answer them. Every comparison is on Skald alternatives and comparisons.

What do you need to know? pick one

0 of 6

AI and machines: PostHog blocks known bots by default and crawlers rarely run JavaScript, so it answers none of these 6. Skald answers all 6 from your server log.

Skald and PostHog compared on 23 questions, grouped by what you need to know
The question PostHogJavaScript SDK Skaldyour server log
Which AI training crawlers read your pages? (GPTBot, ClaudeBot)No, known bots are blocked by defaultYes, page by page
Did an assistant fetch a page live, for someone? (Claude-User)NoYes, kept apart from training crawls
Why did the AI come: training, a live question, or a click?NoYes, three reasons, never added together
Which search engine crawlers came?NoYes, in their own group
Who is probing for .env and wp-login?NoYes, with what your server answered
Block AI crawlers, per AI companyNoYes, applied by your web server; it does not charge
Visitors and visitsYesYes, as an upper bound on people
Each visit's pages in orderYes, user pathsYes
People who clicked through from an AI assistantYes, an AI channel typeYes, by assistant; a floor, as apps strip referrers
UTM campaignsYesYes, with campaign tag problems flagged
Visitors with an ad-blockerIt advises a reverse proxy against blockersYes, the server logs every request
Visitors who decline cookiesA cookieless mode optionYes, the log needs no cookie
Works where you cannot read the server's logYesPeople only, with the script tag; no AI or bots
Events inside the page (clicks, sign-ups)YesYes, with the optional script tag
FunnelsYesYes, counted every day by source and device
Retention cohortsYes, a retention insightYes, by week, split by first source
Leads by source and AI assistantEvents by channelYes, first and last touch, from signed webhooks
Totals must add up, or the day is withheldNoYes
A second, separate recount of every figureNoYes, every day
Server errors (5xx) by pageNoYes, from the status in each log line
404s, and who met themA site health scoutYes, people apart from probes and crawlers
Runs on your own serverSelf-host is unsupported; it supports only its cloudYes, free to self-host
Email alertsYes, on insightsYes, site, AI and security alerts

What each tool is built to do, as we read their own docs in October 2026. If we have yours wrong, tell us.

[02] to be fair

Where PostHog does more than Skald

PostHog is built for product teams. Here is where it is the better tool.

  1. Inside the app

    Events, funnels with in-app steps, user paths and retention are its home ground. A script in the page sees what a server log cannot.

  2. Any host

    Its SDK works wherever your pages run. Skald needs a server or CDN log to see machines; without one, its script tag sees people only.

  3. An MIT licence

    PostHog's self-host code is MIT, though it supports only its cloud. Skald is source-available under the Elastic License 2.0.

[03] before the sign-up

What reached your site before anyone opened the app

Product analytics starts when the SDK loads. The server log starts earlier: the AI assistant that read your docs, the visit it sent, and the lead that followed.

Skald joins a lead from a signed webhook to the visits before it, and lists what the assistant fetched in the minutes before the click.

  1. Mon 09:01 · Claude-User fetched
  2. Mon 09:02 · from claude.ai
  3. Mon 09:05
  4. Wed 16:40 · direct
  5. Wed 16:42 · lead, signed webhook

Sample journey. The fetch is context, not a person; the visits and the lead are counted.

[04] use both

Keep PostHog for the product, add Skald for traffic and the server

Skald needs nothing in your pages, so it never touches PostHog's SDK. Each answers its own questions.

  1. Keep PostHog for

    What people do inside your app: feature events, in-app funnels, paths and retention.

  2. Add Skald for

    AI crawlers and live fetches, search crawlers, scanners, server errors, and which source sent each lead.

  3. Check the figures

    Every Skald figure adds up to the log and is counted twice. A day that does not agree is withheld.

[05] choose by the question

PostHog, Skald, or both

  • "Which features do signed-in users use?" PostHog.
  • "Which AI assistants read our docs?" Skald, from the log.
  • "Which source sent the leads that signed up?" Skald, from signed webhooks.
  • "Is our server answering crawlers with errors?" Skald's crawl health.

What it does not do

  • Skald is not product analytics: it does not follow what signed-in users do inside your app.
  • Without a server or CDN log, Skald sees people only, through its script tag: no AI crawlers, fetchers or bots.
  • What the AI read before a visit is context, never a count of people.
  • AI clicks are a floor: an app that strips the referrer sends a direct visit.

questions

Skald vs PostHog FAQ

Straight answers, including what Skald does not do.

Does PostHog show AI crawlers?

No. As we read PostHog's own docs in October 2026, it blocks known bots by default, and crawlers rarely run JavaScript anyway. Skald reads the server log, so it shows each AI crawler and each live fetch by an assistant, checked against its owner's published addresses.

Is Skald a PostHog alternative?

Not for product analytics. PostHog is built for what people do inside your app. Skald is built for every request your server answers, with leads joined to the pages they read. Many teams use both.

Can I self-host PostHog?

Its self-host code is MIT, but PostHog's docs say it supports only its cloud. Skald is source-available under the Elastic License 2.0 and free to self-host on your own server, or we host it for you.

Do PostHog and Skald both do funnels?

Yes. PostHog has funnels. Skald's funnels are built from each visit's pages in order, optionally from one source, and each saved funnel is counted every day by source and device. A step can also be an in-page event or a lead.

Which one counts visitors with an ad-blocker?

Skald, because the server writes a line whatever the browser blocks. PostHog advises a reverse proxy to get past blockers.

Can I run PostHog and Skald together?

Yes. Skald needs nothing in your pages, so it never touches PostHog's SDK. Keep PostHog for the product, and add Skald for traffic, AI and the server.

$ tail -f access.log | skald

See what AI does with your site. Free for 30 days.

No card. We set up hosted Skald for you within one working day, or you self-host it free. Every line of your log, sorted and added up.

Start free trial Live demo