Software as a service
For project management tools: which templates and invites start workspaces that pay.
Project management software is tried by one person, spread to a team through invites, and paid for once the workspace is too useful to leave on the free tier. Tally follows that path from the first visit to the paid workspace, so you know which templates, searches and integrations start the teams that pay.
14 days free, no card needed.
01How they sell
- FreemiumA free tier capped by members, projects or features; a workspace upgrades when the team hits the cap, sometimes months after the owner's first visit.
- SubscriptionPer-member plans, monthly or annual, with a business tier for permissions and admin controls as teams get larger.
02Payments it reads
- StripeWorkspace plans bought from the billing page inside the app through Checkout; renewals and member changes arrive as invoices on the same subscription.
- PaddleUsed by tools selling to teams in many countries that want tax and invoices handled by a merchant of record.
What Tally can't read
- Subscriptions bought inside your iOS or Android app go through the App Store or Google Play, so they aren't read.
- Tasks, projects and comments in customers' workspaces are never read; an in-app step counts only if you send it as a goal.
- A teammate who joins from an invite isn't linked to the owner's payment; each person stays their own visitor.
03Where buyers come from
- Template searchesSearches for a sprint plan, content calendar or launch checklist land on template pages, and those visitors use the template long before anyone pays.
- Teammate invitesInvited members arrive from an email link with no referrer; tag the invite link with UTMs and invites become a campaign of their own.
- Productivity YouTubeCreators who show their own setup send viewers who copy it; a UTM link in the description keeps the source.
- Integration directoriesListings in a chat or calendar tool's app directory bring teams already working in that tool.
- AI assistantsPeople asking an assistant for a tool that suits a team of their size arrive as AI referrals, with their revenue beside them.
04What Tally answers
Which template pages start workspaces that later pay?
The page breakdown lists landing pages with the revenue of the visitors they brought, so a template that fills the top of the funnel can be checked against what its visitors went on to pay.
Sources with revenueWhere do new workspaces stall before upgrading?
Send in-app steps as goals, such as project created, teammate invited and billing opened, and build a funnel from them; it shows how many visitors reach each step and the revenue of those who did.
Goals and funnelsHow long does a workspace stay free before it pays?
Path to purchase gives the median time from a buyer's first visit to their first payment and the share who pay on the first visit. With a free tier, that median is the time teams spend free before paying.
Path to purchaseWhat does a new user actually do in the first session?
Session replay, once you turn it on, plays back visits with inputs masked, so you can watch where a first-time user hesitates during onboarding without seeing what they typed.
Session replayDo teams from integrations outlast teams from search?
Lifetime value by first source lists customers, lifetime revenue, renewals and repeat rate for each source, so an integration listing's teams and search's teams are compared on what they paid over time.
Lifetime value
05Numbers worth watching
- Goal conversion
- The share of visitors who reach an in-app step such as inviting a teammate, the step most worth moving earlier.
- Median time to buy
- The median time from first visit to first payment; a change to the free tier's limits should move it.
- Revenue by source
- Revenue behind each landing page and source, which ranks templates by what they earned rather than how many people opened them.
- Renewals
- Renewals by first source show whether the teams a channel brings keep their workspace paid after the first term.
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
- React and ViteIf the app is a single-page app built with Vite, add the tag to index.html; route changes through the history API count as pageviews.
- StripePass the visitor's id into the metadata of the Checkout Session the billing page creates, since an upgrade started inside the app never passes the pricing page.
- Call tally('identify', { email }) after sign-up, so an owner who upgrades from another device still links by email.
- Add UTMs to the link in invite emails, so invited teammates show as their own campaign.
08Questions
Is a teammate who joins by invite counted as a visitor?
Yes, as their own visitor once they land on a page with the tag. They aren't merged with the person who invited them, and their visit isn't credited with the owner's payment.
Our upgrade happens inside the app, not on the website. Does it link?
Yes, if the app runs the tag and puts the visitor's id in the Checkout Session, or calls identify with the user's email. The credit still goes to the last visit that didn't come direct, which may be weeks earlier.
Do hash-based routes in our app count as pages?
Yes, with data-hash on the tag. Without it, only route changes through the history API count as new pageviews.