How to write a build-in-public revenue update
A good build-in-public revenue update shares MRR and its change, customers won and lost, what you did and what's next. What to include, plus a template.
A good build-in-public revenue update gives your MRR and how much it changed, the customers you gained and lost, what you worked on, what you'll do next and one thing you learned, published on the same day every month. Keep the numbers defined the same way each time, include the bad months, and link to a source people can check rather than a screenshot.
This guide is for indie hackers who share their numbers on X, Bluesky, Indie Hackers, Reddit, a blog or a newsletter, and want the update to be useful to readers instead of a brag.
Why write a revenue update at all?
Because a regular, honest update builds an audience that trusts you, and a record you can point to later. Readers follow the story more than the number: what you tried, what worked, what didn't. Over a year, those updates become the history of the business, which is useful for customers deciding whether you'll still be around, and for a buyer if you ever sell.
The trust part only works if the numbers are believable, which is most of what this guide is about.
What should a revenue update include?
Five things, in this order: the number, what changed it, what you did, what's next, and one lesson. Everything else is optional.
1. MRR and the change from last month
Lead with MRR and the change in dollars and percent: "MRR: $2,340 (+$210, +9.9%)". MRR is better than revenue for this, because it doesn't jump when a few annual plans renew. If you aren't sure what belongs in it, see what counts as MRR.
If you share revenue too, label it. "Revenue this month: $3,100" and "MRR: $2,340" can both be true when annual plans renewed, and readers notice when the two are mixed up.
2. Customers gained and lost
Give new paying customers, customers who left, and the net. "+18 new, −7 churned, 112 paying." This is the part most updates skip, and the part other founders learn most from, because it shows whether growth is coming from new sales or from keeping people. Monthly churn rate is a good single number to add once you have enough customers for it to mean something.
3. What you did
Three to five bullets on what you shipped, launched or tried, and roughly what it did to the numbers. "Launched on Product Hunt: 400 signups, 9 paid" is more useful than "had a great launch".
4. What's next
One to three things you'll work on next month. It gives readers a reason to come back, and gives you something to report on in the next update.
5. One lesson
A single thing you learned, specific enough that someone else could use it. This is often the part that gets shared.
Optional: costs and profit
Sharing costs (hosting, tools, ads, contractors) turns revenue into profit, which is what a business is actually worth to its owner. Many founders leave it out; if you include it, list the main costs so readers can see where the money goes.
A revenue update template
Copy this and fill it in each month:
## [Product] — [Month Year] update
**MRR:** $X (+$Y, +Z% from last month)
**Customers:** +A new, −B churned, C paying
**Revenue this month:** $R (optional)
**Costs:** $K (optional)
Verified numbers: [link to your public revenue page]
### What I did
- ...
- ...
### What's next
- ...
### One thing I learned
...
For a post on X or Bluesky, shorten it to the first two lines, the link and the lesson, and link to the full update on your blog or newsletter.
How often should you post a revenue update?
Monthly, on the same day each month. Monthly matches how MRR and churn are measured, gives enough time for something to change, and is easy to keep up. Weekly updates usually end up reporting noise; quarterly ones lose the audience between posts.
Pick a day just after the month closes, such as the 1st or the first Monday, so the numbers cover a full month. Then stick to it. A gap of three months reads as "it's going badly", whether it is or not.
How do you share bad months?
Exactly like good ones: same format, same day, same numbers. A flat or falling month, with an honest line about why, is often the update people remember, and it makes your good months more believable. Skipping bad months does the opposite: readers who notice the gap stop trusting the rest.
Say what happened and what you'll do about it. "MRR fell 6% after a price change pushed out some annual subscribers who didn't renew; I'm testing a cheaper tier next month" is useful to read. "Tough month, back at it" isn't.
How do you make readers trust your numbers?
Define your numbers the same way every month, and link to a source you can't edit. A screenshot of a dashboard is easy to change and only shows what you cropped. Connect Stripe or RevenueCat to a service that reads your revenue directly, and link to the page it publishes in every update. Readers can then click through and see the whole chart, not just this month.
On VerifyArr that page is free, updates every hour and comes with an embeddable Verified MRR badge you can put in the update itself. If you'd rather not publish exact figures, you can show a range such as $5K–$10K, or keep the numbers private and show only that they are verified. More on this in how to prove your MRR when building in public.
Common mistakes in revenue updates
- Changing the definition. Counting one-off payments as MRR one month and not the next makes the trend meaningless.
- Rounding up. "$1k MRR" when it is $940 is the kind of thing a sharp reader checks.
- Only the headline. MRR without customers gained and lost hides whether growth is healthy.
- Annual plans as MRR. A $240 yearly plan is $20 of MRR, not $240.
- Going quiet. An update that stops is louder than one that reports a bad month.
Frequently asked questions
Should I share exact revenue or a range?
Exact numbers are more useful to readers and get more attention. A range is a fair compromise if competitors or customers seeing exact figures worries you. Either works if the source is verified.
Should I include revenue from one-off sales?
Report it separately as revenue, not as MRR. Lifetime deals and one-off payments are real money, but they don't recur.
What if my MRR is still very small?
Post it anyway. Early updates with small numbers are where an audience starts following the story, and they become the "before" of every later milestone.
Do revenue updates help if I sell later?
Yes. A long public record of consistent, verified numbers shows a buyer the trend before the first call. See how to prepare a SaaS for sale.
If you post revenue updates, connect Stripe or RevenueCat to VerifyArr and link a verified page instead of a screenshot. It is free, read-only and updates every hour.
Buy and sell startups on revenue nobody typed in.
Every figure is read hourly from Stripe or RevenueCat with a read-only key. Listing is free.
More articles

How to Sell SaaS Companies Before a SaaS Sell Off
Learn how to sell SaaS companies before a broader SaaS sell off, protect your valuation multiples, and exit cleanly with automated revenue proof.

Looking to Buy a Company? Find Verified Startups
Learn how to buy a company with automated, verified revenue. Compare acquisition platforms, evaluate real MRR, and avoid costly diligence traps.