Software as a service
For web apps: which tool pages earn, who pays on the spot, and who asks for a refund.
Consumer and prosumer web apps, from PDF editors and converters to planners, earn from people who arrive with one task, hit a paywall at the moment of need and pay for a day, a month or a year. Tally ties each of those payments to the page and search behind it, and keeps refunds and chargebacks against the same source.
14 days free, no card needed.
01How they sell
- SubscriptionMonthly and yearly plans unlocked at the paywall, sometimes after a short trial that renews into a full month.
- One-offDay passes or single-download purchases for people who need one task done once.
- FreemiumFree use with limits on file size, exports or a watermark, so the paywall sits right where the task is finished.
02Payments it reads
- StripePaywall plans and passes through Checkout or Payment Links; renewals, refunds and chargebacks are read.
- PaddleWeb apps sold to consumers worldwide use Paddle as merchant of record for VAT; refunds and chargebacks arrive as adjustments.
- Lemon SqueezySmaller tools sell passes and plans through Lemon Squeezy checkout links, linked by custom data.
What Tally can't read
- Display ads on free pages pay out through an ad network, which isn't read.
- Purchases in a wrapped mobile version sold through Google Play or the App Store aren't read.
- Files people upload and convert aren't read; only page visits, goals you send and payments are.
03Where buyers come from
- Task searchesSearches like merge PDF or remove background bring people who want it done now and may pay within minutes.
- AI assistantsPeople asking an assistant how to do a task get sent to a tool page, and those visits have their own channel.
- Reddit answersA comment recommending your tool in a thread that ranks keeps sending visitors long after it was posted.
- BookmarksRepeat users come back by bookmark, which Readable Direct counts as typed or bookmarked rather than unknown.
- Shared resultsResults people share, such as a finished image or a plan, send friends to the tool through in-app browsers.
04What Tally answers
Do people pay on their first visit?
Path to purchase gives the share of buyers who paid on their first visit and the median time to purchase; for a tool built around one task, a high first-visit share says the paywall sits in the right place.
Path to purchaseWhich tool page earns the most per visitor?
The page breakdown carries revenue beside visitors for each landing page, so a busy converter and a quieter editor can be ranked by what each visitor is worth.
Sources with revenueWhere are our chargebacks coming from?
Chargebacks are counted against the sale they reverse; open those sales' receipts and the source and pages behind each show whether one search or one page brings people who later dispute the charge.
ReceiptsDo people see the price before the paywall stops them?
Click and scroll heatmaps on the result page show where people press when the paywall appears and whether they reach the plan options at all.
HeatmapsWhat happens when someone abandons at the paywall?
Session replay, once turned on and with inputs masked, plays back the moments before someone leaves the paywall, so you can see whether it was the price, the plan choice or a broken button.
Session replay
05Numbers worth watching
- First-visit buyers
- The share who pay on their first visit, the figure a single-task tool depends on most.
- Refunds and chargebacks
- Refunds and chargebacks by source; a trial that renews unnoticed tends to come back as a refund or a dispute, and the source shows where those buyers came from.
- Revenue per visitor
- Revenue per visitor by landing page, for deciding which tool pages to build next.
- Visitors from AI assistants
- Visits from AI assistants, which answer how-to questions by sending people to tools.
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 ViteFor a single-page app built with Vite, put the tag in index.html; each route change through the history API counts as a page.
- StripePayment Links on the paywall are tagged by the snippet in cookie mode; for Checkout Sessions your server creates, add tally_visitor_id to the metadata.
- Send tally('task_done', { tool }) when a free result is ready, so finishing the task is a goal you can set against payment.
08Questions
A trial renews and the buyer disputes the charge. Where does that show?
The chargeback is counted with refunds against the payment it reverses and that payment's source, so the page or search that brought the buyer carries it.
We earn from display ads as well as plans. Is that income included?
No. Ad network payouts aren't read; revenue here is what visitors paid you through Stripe, Paddle, Lemon Squeezy or Polar.
Do visitors from AI assistants pay as well as search visitors?
Compare the AI channel's row with search's in the channel breakdown: each carries visitors and revenue, so the two can be weighed per visitor.