№ 02 Three things called analytics

Three different numbers, one word

Each one has an owner. Mixing them up is where "analytics" stops meaning anything.

  • You

    Who visited

    For example: A page-view count, a session count, a bounce rate.

    You choose a visitor-analytics tool and add it to the page. The platform hosts the page. It does not run the tool for you.

    Glossary: Page view
  • CustomHosted

    How much the plan moved

    For example: The transfer figure the invoice prices against a fair-use allowance.

    The platform meters this on every plan, whether or not you add a visitor-analytics tool of your own.

    Billing
  • CustomHosted

    What happened to one request

    For example: A single request, narrowed to a timestamp and a status code.

    A record of one request, not a count added up across many. Logs covers this ground in full.

    Logs
№ 03 Where a number comes from

Two paths, kept separate

The metered figure never touches a tool you add — and a tool you add never touches the metered figure.

  1. 1

    A request reaches the edge

    The platform counts every request toward the transfer figure here, before your own code, or any tool you added, ever runs.

    CustomHosted

  2. 2

    The page loads in a visitor's browser

    If a measurement tag sits on the page, the tag runs here. It records the visit in the tool's own count.

    A tool you add

  3. 3

    The transfer figure rolls up into the month

    The platform adds this across every request that month, then reads the total against the fair-use allowance below — see Billing for the specimen invoice.

    CustomHosted

  4. 4

    The visitor-analytics figure rolls up in the tool

    The tool holds and reports this number itself. This platform never receives it, so it cannot publish a number it never sees.

    A tool you add

№ 04 What we measure

What we meter, against what you add

Four figures on every plan, with no tool required — and the one figure that needs one.

We meter, on every plan

  • Transfer

    The bytes leaving the network toward a visitor. We price this against the fair-use allowance — see the reading section below.

  • Uptime

    Whether the site answered. We watch this continuously — see Monitoring for the watch list behind it.

  • Faults

    A failed check or an error rate. This is the trigger behind the escalation ladder — see Monitoring for who gets woken and when.

  • Build records

    What ran, whether it passed its checks, and when. We keep this for the life of the account — the same record class Logs already names.

You choose, and add

  • Visitor analytics

    A page-view count, a session count, or a bounce rate. You pick the tool. We brief it in as a change and disclose it on the privacy page.

№ 05 Adding a tool

Adding a measurement tool

A briefed change, not a switch — sized inside the iteration allowance, around 120 minutes, the same 2-hour unit any small change draws from.

  1. 1

    Brief which tool, and why

    Name the tool and what it needs to measure — the same brief shape as any other change.

    You

  2. 2

    We add it to the allowlist

    We add the host to the named list every build is checked against. That same list fails the build if a second, undisclosed host shows up.

    CustomHosted

  3. 3

    We disclose it

    The privacy page names it, in the same shape as this site's own single disclosed tag.

    CustomHosted

  4. 4

    It ships

    It ships through the same pipeline as every other change. Nothing third-party goes live silently.

    CustomHosted

№ 06 The cost of a tag

What a tag does to the page

The same row Performance already publishes — reused whole, not restated.

An embedded third-party tag

A widget, a tracking pixel, an embed from somewhere else — each one is a request to a server this page's own budget has no say over, and one this site discloses rather than hides (see the row below and /legal/privacy).

The loop's fix Brief "drop the unused tag" or "add this one, disclosed," and the diff that adds or removes it is reviewed against the same allowlist this page's own budget is held to — nothing third-party ships silently.

№ 07 Cookies and privacy

Said plainly, not left implied

What the platform does, what a tool does, and whose job the disclosure is.

  • The platform sets no cookie of its own

    Serving a page sets nothing in a visitor's browser by itself. Anything a tool you add does with a cookie is that tool's own behaviour, not the platform's.

  • A visitor's identity, beyond what's already disclosed

    Nothing here goes further than the analytics already named for you.

  • The disclosure is yours to make

    Privacy names the one tool this site's own build allows. A tool you add to your own app is yours to disclose the same way. See Privacy.

  • No legal advice, no compliance claim

    This page states what the platform does and what a tool does. It is not a substitute for your own legal advice on what a specific tool requires you to disclose.

№ 08 The worked artifact

This site's own measurement

Every row below is provable from this repository, not asserted.

  • One disclosed tag, named on the privacy page

    This site runs a single visitor-analytics tag, named where a reader can check it, not buried in a policy nobody reads.

  • An allowlist that fails the build on a second one

    Every deploy is checked against a named list of allowed third-party hosts. A second, undisclosed tag fails the build before it ever ships.

  • A published page-weight budget

    Every route's measured weight is checked against a ceiling on every deploy — see Performance for the numbers themselves.

  • Request logs kept 90 days

    Every request to the form is logged for 90 days, not kept forever and not thrown away immediately.

№ 09 Reading the number

Reading the transfer number against the allowance

The two published allowances, and what happens once usage sits near one.

  • Static Starter

    ~100 GB transfer/mo

  • Static Pro

    ~500 GB transfer/mo

  1. 1

    We notice

    Usage sits near or above the allowance for more than one billing cycle.

  2. 2

    We reach out

    Through the quote channel, before anything on the account changes.

  3. 3

    You choose the plan that fits

    Move to a plan sized for the real workload, or talk through what is driving the transfer.

№ 10 When a number becomes a change

The loop closes here

Measure, brief, ship, measure again — the fourth step the loop never names on its own.

  • The transfer number climbs toward the allowance

    Read against the fair-use sequence below — a conversation first, never a charge applied without one.

  • A visitor-analytics number moves the wrong way

    A rising bounce rate or a falling conversion is a brief, not an alert this platform can raise on your behalf — the tool you added is the one that saw it.

  • A shipped change needs checking

    Brief "did the last change help", and the next reading against your own visitor-analytics tool answers it — this platform has no way to answer it for you.

Once a number is worth acting on, it ships the same way any other change does:

  1. 1

    A routine scan flags a dependency

    The same kind of check that watches the infrastructure layers above, run against your application’s own dependency list.

    CustomHosted

  2. 2

    It's triaged as application-level, not infrastructure

    A library your own code imports isn't ours to patch silently — it can change how the app behaves.

    CustomHosted

  3. 3

    Briefed as a change

    Written up the same way any other change request is — this is what the Agentic iteration — CodeHerder add-on covers.

    CustomLabs

  4. 4

    An agent opens the pull request

    The upgrade lands as a real pull request against the repository, with the test suite run against it.

    CodeHerder

  5. 5

    A human reviews and merges

    Someone reads the diff before it goes anywhere near production — nothing here is auto-applied blind.

    CustomLabs

  6. 6

    It ships through the same pipeline

    The same pipeline that deploys everything else on your stack ships this too — no separate process to babysit.

    CustomHosted

  7. 7

    You're told it's done

    A note confirming what changed and that it merged, in the same shape as every other note on this site.

    CustomHosted

Priced the same as any other small change — inside the iteration allowance covered under Agentic iteration — CodeHerder ($25/mo). See The hours ledger for the full ledger.

№ 11 Said plainly

The honest limits

No console, no dashboard, no usage report. Said plainly, not buried.

  • No console

    There is nowhere to click into a report. Every number above is read from an invoice, a request-log extract, or a tool you added yourself.

  • No dashboard

    Nothing on this platform draws a chart of your traffic. A visitor-analytics tool you add has its own.

  • No usage report

    There is no periodic summary sent to you. Ask through the quote channel for an extract of what the platform meters.

  • We do not watch your visitor-analytics tool

    A tool you add reports to you, not to us. It is not on the watch list a fault would page someone from.

  • Field Core Web Vitals

    The numbers above are a lab measurement of the build itself — bytes over the wire, not what a real visitor's device and connection actually experienced. We don't run the traffic yet to publish that honestly.

№ 12 Answers

Analytics questions

What people ask once "do you do analytics" stops being a yes-or-no question.

  1. 01Do you run analytics on my app for me?

    No. We meter transfer, uptime, faults, and build records on every plan. Counting who visited needs a visitor-analytics tool you choose and add — see What we measure, against what you add above.

  2. 02Can I add my own analytics tool?

    Yes. Brief which tool and why. We add it to the build's own allowlist, disclose it on the privacy page, and ship it through the same pipeline as any other change.

  3. 03Will adding a tool cost extra?

    No. It sits inside the iteration allowance — 3 changes a month, 2 hours each, the same allowance covered under Agentic iteration — CodeHerder ($25/mo).

  4. 04Does the platform set a cookie?

    No, not by itself. A visitor-analytics tool you add may set one to do its job — see Cookies and privacy above, and Privacy for the binding wording on the one tool this site discloses.

  5. 05Why is there no field Core Web Vitals number?

    The numbers above are a lab measurement of the build itself — bytes over the wire, not what a real visitor's device and connection actually experienced. We don't run the traffic yet to publish that honestly.

  6. 06Does a bot or scraper count against my transfer allowance?

    A bot or scraper pulling every page repeatedly uses the same transfer allowance a real visitor would. Nothing on the platform tells the two apart before they hit the allowance.

  7. 07What happens if my transfer number sits near the allowance?

    We reach out first, through the quote channel, before anything on the account changes — see Reading the transfer number above for the full sequence.

  8. 08Can the CodeHerder agent read my visitor-analytics numbers?

    No. It reads your application code to brief and open a pull request. It never opens a connection to a third-party analytics tool or your account there.

Want a measurement tool added, or a number read against your plan?

Brief it through the same quote channel as any other request — see Billing for how the number is priced.

Get a quote →