For finance teams
Definitions you can defend, and a difference you can explain
A metric you cannot reproduce is a metric you cannot sign off. The usual failure is not bad arithmetic — it is arithmetic nobody is allowed to see.
What does Bastle do for finance teams?
The job
What you are actually trying to do
Not a feature list rearranged. These are the tasks that bring this reader to a subscription analytics tool in the first place, and what in Bastle does each one.
Trace a subscription metric back to its records
Not approximately, and not by asserting that the tool is right. Every figure states the formula that produced it, the period it covers and the exact customers, subscriptions and invoices it read, so a variance against your provider can be worked back to the policy responsible. An automated line-by-line bridge against the provider's own figure is on the roadmap and is not available yet.
Write the definition down once and hold everyone to it
Churn, delinquency, trial handling, coupon and refund treatment are configured per workspace and apply everywhere: dashboards, the API, the assistant, investor rooms. There is one definition of MRR in the company because there is one engine computing it.
Keep prior periods explainable after a rule changes
Changing a policy recalculates history against the new rule, and every figure states the formula it was computed under. What does not exist yet is a versioned, attributed record of the change itself — that is on the roadmap, and until it ships a restated figure is only as defensible as the note you kept outside Bastle.
Get the numbers into the model without re-keying them
Every metric is available as a daily series over the REST API, with the customers and plans behind each movement, plus CSV export and daily snapshots. Signed outbound webhooks push billing events to your systems rather than making you poll on a timer.
Friction
The complaints people actually write down
Taken from published reviews and public discussion of the incumbent tools rather than invented for this page. Where Bastle does not solve one of them, the answer below says so rather than changing the subject.
The complaint
The tool's metric rules are a black box: no configurable definitions, no audit trail, and MRR that never reconciles to the payment provider.
What Bastle does
Definitions are editable workspace policy, and every figure exposes the formula, the period boundaries and the records that produced it rather than asserting the number is correct. Two parts of that answer are honest gaps: there is no versioned audit trail on definition changes, and no automated variance view against the provider. Both are on the roadmap.
The complaint
Non-standard billing data is effectively uneditable, so one bad import poisons a metric permanently.
What Bastle does
Individual customers can be excluded, plans hidden, and a subscription timeline corrected when the provider's record is wrong. Corrections carry a business timestamp, so a backdated fix lands in the period it belongs to rather than the day someone noticed.
The complaint
No revenue recognition. Subscription analytics reports billings, the accounting system reports recognised revenue, and reconciling the two is a manual quarterly exercise.
What Bastle does
Bastle does not do revenue recognition, and if ASC 606 or IFRS 15 schedules are a requirement you need a system that does — tools built for that exist and this is not one. What Bastle contributes is a subscription layer whose rules are legible, so the reconciliation you perform has documented inputs on at least one side.
The complaint
No warehouse destinations and no outbound webhooks, so getting data into finance systems means scheduled exports or polling.
What Bastle does
There are no managed Snowflake or BigQuery destinations — that is a real gap against tools that offer them. What ships is a complete REST API, CSV export, daily metric snapshots and signed outbound webhooks with automatic retries, which is enough to build the pipe yourself but is not the same as a managed one.
The complaint
Amounts drift because money is handled as floating point somewhere in the chain, and multi-currency rounding is nobody's explicit decision.
What Bastle does
Money is integer cents everywhere, in every request and response, with zero-decimal currencies handled correctly. Original amounts are preserved alongside the converted figure at the account currency rather than being re-rounded on each pass.
Reproducibility before precision
The complaint that shows up most often about subscription analytics is not that a figure is wrong. It is that nobody can say how it was produced. Rules are undocumented, they are not configurable, and when the tool's MRR disagrees with the payment provider's the vendor's answer is that they normalise things differently. That is an unfalsifiable claim, and finance cannot sign one.
Bastle's position is that a definition is a business decision, so it belongs to the business. Every metric carries the formula that produced it, the period boundaries and the record set behind it. If you disagree with a result you can find out exactly where the disagreement starts.
The policies that actually move the number
A handful of choices account for most of the variance between two honest calculations of the same subscription business:
- Delinquency window — whether a subscription with a failed payment is still revenue after thirty days, sixty, or indefinitely.
- Trial handling — whether trialing subscriptions are counted as customers and as revenue.
- Coupon treatment — whether a full-discount coupon reads as churn or as a customer paying zero.
- Same-day wash — whether a subscription started and cancelled the same day is a signup plus a churn, or neither.
- Annual churn lookback — because annual plans are invisible to a thirty-day churn window and a blended rate hides them.
Each is set per workspace. Change one and history recalculates against the new rule, so a comparison across periods is a comparison on one definition rather than a comparison of two definitions.
Reconciliation is work you still do yourself
Bastle reports what the business earned; the payment provider reports what it billed. Those differ for reasons that are individually sensible — trialing users are not customers, your test account is not revenue, a refund reverses recognition, delinquency is a policy question. What Bastle gives you today is the input side of that bridge: each figure names its formula, its period and the records underneath, and the policies driving each adjustment are ones you set and can read back. Assembling the bridge is still manual. An automated view that itemises the variance against your provider's figure is on the roadmap and is not built, and it would be easy to imply otherwise on a page like this.
Where the boundary is
Bastle is not an accounting system and does not perform revenue recognition. There are no deferred revenue schedules, no GL journals, no locked periods, no ASC 606 or IFRS 15 automation. If recognised revenue and audit-grade subledgers are the requirement, the products built for that job are the right purchase, and a comparison that claimed otherwise would waste an evaluation cycle. There are also no managed warehouse destinations; you get an API, webhooks and exports and build the pipe yourself.
What Bastle covers is the subscription measurement layer beside that: MRR and its movements, churn in each of its forms, cohort retention, segmentation, and forecasting in beta with expense modelling, runway and budget variance, with accounting actuals synced from QuickBooks Online or Xero.
Getting it out
Every metric is a daily series over the REST API, with the customers and plans behind each movement and cohort retention as structured cells. Daily snapshots, CSV export of customers and series, and signed outbound webhooks with automatic retries cover the rest. The API returns figures from the same engine as the dashboards, which is the actual point: an internal report and a Bastle screen cannot quietly diverge into two versions of MRR.
Where to start
The parts you will use first
All of it sits in one workspace reading one normalised billing history, and Bastle is free while in beta — so nothing here is a tier, an add-on or a separate subscription.
Metrics
Most analytics tools hand you a number and ask you to trust it.
Learn moreAPI & MCP
Analytics tools that treat the API as an afterthought make you re-implement their metric definitions in your own code.
Learn moreSegmentation
A single company-wide churn rate is an average of several different businesses.
Learn moreForecasting
Every forecast is wrong. In beta.
Learn moreAsk
A dashboard makes you assemble the answer yourself.
Learn moreThe same product from another seat: founders, investors and boards, saas startups and subscription apps.
Or go straight to the detail: everything Bastle does, the metric glossary for the maths behind any number, an honest comparison with the alternatives, or the live demo — the real application running on a generated dataset, no signup.
Frequently asked questions
Does Bastle do revenue recognition?
How do I explain the gap between Bastle and Stripe?
Is there an audit trail on metric definitions?
Can I export to a data warehouse?
How is currency handled?
Can I correct bad data from the billing provider?
What does it cost?
See your own numbers in about two minutes.
Connect Stripe and Bastle backfills your full history. Free while in beta — no card, no sales call.