Pricing

Become an Anacrafter.

three plans · $2.99 to $9.99 a month · cancel any time
Where the line is

Everything that reads your numbers is free, and stays free — the dashboard, the realtime feed, and every one-shot report. No account, no card, no expiry.

Four things do more than show you the numbers. craft configure creates the GA4 property for a domain and hands you its tag; craft audit checks how the property is measuring and tells you what is wrong with it; craft watch checks the numbers against their own recent normal and tells you what broke; craft mcp lets an assistant read the site for you. Those are the subscription, read as a ladder: Basic is what the original $2.99 plan was, Pro adds the audit and Slack delivery of a watch, and Elite adds the MCP server. Every plan includes the ones below it, and moving up is billed going forward, never charged again.

Miner
Free
no account, no card, no expiry
  • The dashboard — seven panels, realtime feed, achievements
  • One-shot reports — overview, pages, portals, realms, live
  • craft login · props · use — connect a property you already have
  • Every property you save, seven palettes, synthetic-data mode
Apache-2.0. The whole thing is on GitHub.

Every command, and which side it is on

CommandPlanWhat it does
craftFreeThe dashboard. With no property saved it runs on synthetic data
craft configure★ AnacrafterCreates the GA4 property and web stream, prints the tag with the real measurement id — the ask arrives on the page the Google sign-in already ends on
craft login · props · useFreeSign in, list properties, pick the default
craft overview · pages · portals · realms · liveFreeOne-shot reports that print and exit
craft theme · demoFreePalettes, and the whole dashboard on synthetic data
craft audit★ ProSixteen checks on how the property is measuring rather than what it measured — key events that were never marked or never fire, outcomes arriving unmarked, measurement switched on and recording nothing, purchases without revenue, page views counted twice — and --fix applies the ones GA4 can repair itself
craft watch★ AnacrafterCompares the last complete day against its own normal and reports what moved — to the terminal
craft slack★ ProPicks the channel a watch posts to. Free to set up; the delivery craft watch makes of it is what Pro covers
craft mcp★ EliteServes the same numbers over the Model Context Protocol, for Claude Desktop or any MCP client
craft subscribe --plan <name>AnyOpens the buy page for basic, pro or elite — --check only reads where the account stands

Starting one from the browser

Take the button above. Stripe asks for an email — use the one you sign in to Google with, because that is what hands the payment to your account afterwards. Then, on any machine:

# already signed in? craft subscribe --check does the same
craft login

Signing in is what claims the payment. There is no licence key, no code to paste, and nothing to keep anywhere — the account is the receipt. If you paid with a different email than the one on your Google account, send us both and we will move it across.

Starting one from the terminal

Two commands, and no email to match up: craft subscribe ties the payment to the signed-in account before it ever opens Stripe. The first line is only for a machine that has not got craft yet.

Then:

It opens the same Stripe page, waits there for the payment to clear, and writes the flag itself when it does.

The rest of it

A second machine

# the same Google account is the whole of it
craft login
craft subscribe --check

--check only looks up where the account stands. It opens no browser, so it is also the one to run from a script or over SSH.

What the payment knows about you

One row: the Stripe customer, the subscription, its status, and the email the card was paid with — the key your Google account is matched against, once and one way. An unowned payment can be adopted by an account with the same email; an owned one can never be read by another. After that the account id is the only key, so changing your email later changes nothing.

Nothing about your analytics goes near it. The binary has no telemetry, and the subscription lookup does not know your site exists.

The gate is a line in your config

It is one supporter = true in a TOML file you own, in a binary you can rebuild from Apache-2.0 source. We are not going to pretend otherwise: no phone-home, no licence check on launch beyond the one keeping your own subscription current, and no telemetry anywhere in the binary.

So it is an honest ask rather than a lock — three plans, from the $2.99 that always bought the setup command and the watch, up to Elite for the ones that send you a Slack message or answer an assistant, from the people who wrote them.

Something went wrong

A payment that has not landed, a card that needs changing, a refund, or an email that does not match the Google account it was meant for — [email protected], and a person will answer.