Developer tools
For a headless CMS: which starters and agencies bring projects that pay, and who pays for them.
A headless CMS is chosen by developers, used by content editors and often paid for by a client or a marketing team, priced by records, API calls, locales or seats. Tally ties each plan to the visits behind it, and when the developer and the payer share an email, the starter they cloned leads to the invoice.
14 days free, no card needed.
01How they sell
- FreemiumA free tier for personal projects, upgraded when a project goes to production or needs more records, locales or roles.
- SubscriptionPlans per project, monthly or yearly, raised by seats, environments or roles.
- UsageAPI requests, bandwidth or assets above a plan's allowance, billed as usage.
02Payments it reads
- StripeProject plans and usage through Stripe; upgrades, renewals and refunds are read.
- PaddleSome CMS products sell to agencies and companies worldwide through Paddle; transactions and adjustments are read.
What Tally can't read
- Content API traffic from the sites built on your CMS isn't read; those requests aren't visits.
- Self-hosted installs of an open-source edition pay nothing and appear only as docs visitors.
- Agencies who rebill clients for your CMS on their own invoices aren't read; only what reaches your account is.
03Where buyers come from
- Framework startersStarters for Next.js, Astro or Nuxt on GitHub send developers who clone a working site; a UTM on the README link names the starter.
- Deploy buttonsOne-click deploys on hosting platforms create a project and bring developers to sign-up.
- Agency partnersAgencies standardise on one CMS and open projects for each client; a partner link credits them.
- Content modelling docsDevelopers searching how to model content or set up previews land on the docs.
- Comparison searchesTeams leaving a traditional CMS compare headless options on price per seat and locale.
04What Tally answers
Who pays: the developer who found us, or the client?
When the developer and the payer are different people, they are different visitors. The payer's journey in the visitor list shows their own visits, and an identify call on project invites lets the client's payment link by email.
Visitors and journeysDo agencies bring several paying projects?
Lifetime value by first source counts the customers and lifetime revenue behind an agency's partner campaign, with repeat rate, so partners who keep opening projects stand out.
Lifetime valueWhich framework's starter brings projects that pay?
With a UTM on each starter's README link, every starter has a campaign row with visitors and the revenue its projects paid.
Sources with revenueAre AI crawlers reading our docs?
AI crawlers seldom run scripts, so the tag doesn't see them; the server snippet for Next.js middleware, Cloudflare Workers or Express reports their requests, shown by crawler, operator, purpose and page.
AI crawlersHow long from cloning a starter to a paid project?
Path to purchase gives the median time and visits from first visit to first payment; a project built for a client may wait for launch day before anyone pays, and the histogram shows how often.
Path to purchase
05Numbers worth watching
- Repeat rate
- The share of customers who paid more than once, which agencies with many projects push up.
- Revenue by source
- Revenue behind each starter, deploy button and partner campaign.
- Lifetime value by first source
- Lifetime revenue by first source, with seats and usage added as projects grow.
- AI crawler requests
- AI crawler requests on docs and guides, a sign of how assistants learn to recommend you.
06An example
Glad HamsterCustomerBerlin, Germany · Desktop · FirefoxRedditOrganic Sociallatest visit: 4 pages/blog/stripe-fees+2/thanks3 visits3m 08s median6m 42s longest$49
Visits, last 30 days
Whole journey- RedditOrganic Social/blog/stripe-fees/pricing/signup/thanks
4 pages · 6m 42s engaged · 1 goal$49 credited to this visit
- Directtyped or bookmark/pricing/docs
2 pages · 1m 36s engaged
- GoogleOrganic Search/blog/stripe-fees/
2 pages · 3m 08s engaged
Cosy CapybaraAustin, United States · Mobile · SafariGoogleOrganic Searchlatest visit: 2 pages//pricing1 visit1m 11s engaged–
Visits, last 30 days
Whole journey- GoogleOrganic Search//pricing
2 pages · 1m 11s engaged
Spry BisonToronto, Canada · Desktop · ChromeChatGPTAI Assistantslatest visit: 4 pages/compare+2/docs/api2 visits3m 57s median5m 44s longest–
Visits, last 30 days
Whole journey- ChatGPTAI Assistants/compare/pricing/docs/docs/api
4 pages · 5m 44s engaged · 1 outbound click
- PerplexityAI Assistants/compare
1 page · 2m 09s engaged
Snug CapybaraCustomerLeeds, United Kingdom · Desktop · EdgeNewsletterEmaillatest visit: 2 pages/changelog/2 visits1m 41s median2m 34s longest$120
Visits, last 30 days
Whole journey- NewsletterEmail/changelog/
2 pages · 2m 34s engaged
- Directtyped or bookmark/
1 page · 48s engaged
Bubbly LlamaUtrecht, Netherlands · Mobile · Chromex.comOrganic Sociallatest visit: 1 page/blog/launch-week1 visit1m 04s engaged–
Visits, last 30 days
Whole journey- x.comOrganic Social/blog/launch-week
1 page · 1m 04s engaged
Velvet PenguinBengaluru, India · Desktop · ChromeHacker NewsOrganic Sociallatest visit: 3 pages/blog/stripe-fees/docs/pricing1 visit4m 56s engaged–
Visits, last 30 days
Whole journey- Hacker NewsOrganic Social/blog/stripe-fees/docs/pricing
3 pages · 4m 56s engaged
07Setting up
- Next.jsIf the docs are a Next.js app, add the tag to the root layout and the middleware snippet for AI crawlers.
- StripePass tally_visitor_id in the metadata of the Checkout Session when a project upgrades, and in subscription_data.
- Call tally('identify', { email }) when someone accepts a project invite, so a client who pays links by email.
- Put UTMs on the links in each starter's README and on its deploy button.
08Questions
Do API requests from our customers' sites count as visits?
No. Content API calls aren't visits. Only pages on your own site that carry the tag are counted.
An agency pays for ten client projects. How does that show?
As one customer with several subscriptions if the agency pays them all with one email; lifetime value and repeat rate add them up under the agency's first source.
A developer's free project upgrades months later. Is it still credited?
Yes, to the last visit that didn't come direct before the payment, with the first visit kept, as long as the payment links by visitor id or email.