BlogGuide
Guide·18 April 2026·15 min read

Forecasting Recurring Revenue: A Spreadsheet-Free Approach for Indie Devs

Learn how solo programmers can forecast recurring revenue without Excel chaos. AI-powered forecasting for retainer churn, growth, and quarterly targets.

TC
The Cashierr Team

The Spreadsheet Trap

You've got three retainer clients. One pays $3k/month, another $2k, the third $1.5k. On a good day, you can tell someone your monthly recurring revenue—MRR—off the top of your head. But then someone asks, "What if Client A churns in Q3?" or "How much can you actually spend on a new hire?"

That's when you open Excel.

Two hours later, you've got 14 tabs. One for base revenue, one for growth assumptions, one for churn scenarios, one for seasonal dips. You've color-coded things. You've got formulas that reference other sheets. And you're still not sure if the numbers are right, because you changed a growth rate in Tab 4 and forgot to update Tab 9.

This is the spreadsheet trap. It's where indie devs spend engineering brainpower on bookkeeping instead of building.

The problem isn't that spreadsheets can't work. They can. The problem is that spreadsheets don't think. They don't flag when your revenue is dangerously concentrated in one client. They don't alert you when a churn assumption is pulling you off track. They don't ask, "Wait, if you're growing at 10% but losing 5% to churn, what's your net growth actually look like?" You have to ask those questions yourself, and you have to remember to ask them.

For a solo programmer juggling client work and shipping code, that's cognitive overhead you don't need.

What Recurring Revenue Actually Means

Before we talk about forecasting, let's define the thing we're forecasting.

Recurring revenue is money that comes in on a predictable schedule from the same client. It's not a one-off project fee. It's a retainer—$3,000 a month to maintain a codebase, $2,500 to provide on-call DevOps support, $1,500 to handle bug fixes and small features.

For solo programmers and small dev shops, recurring revenue is the holy grail because it's predictable. You know what's coming in next month (assuming the client doesn't churn). You can plan. You can breathe.

Monthly Recurring Revenue (MRR) is the sum of all active retainer contracts in a given month. If you've got three clients paying $3k, $2k, and $1.5k, your MRR is $6,500.

Annual Recurring Revenue (ARR) is MRR multiplied by 12. In this case, $78,000.

But here's where it gets tricky: ARR isn't "what you'll make this year." It's "what you'll make if nothing changes." As soon as a client churns or you land a new one, ARR shifts. That's why forecasting matters.

Forecasting ARR and MRR for effective budgeting requires understanding not just your current numbers, but how they'll move. Are you adding new clients? At what rate? Are clients churning? How often? Are existing clients expanding (paying more)? These dynamics are what a real forecast captures.

The Two Questions Every Solo Dev Secretly Worries About

When you strip away the jargon, revenue forecasting for indie developers answers two questions:

1. How much should I be making this quarter?

This is your target. Not "How much will I make if things stay the same?" but "What's a realistic, healthy target given my capacity and market rate?"

For a solo programmer, this might look like: "I've got three solid retainers. I can probably add one more without burning out. If I land that, I'd be at $8k MRR by Q3. That's $96k ARR, which feels right for my experience level and market."

Without a real forecast, you're guessing. With one, you've got a number to work toward.

2. How's the business actually doing?

This is the health check. Are you on track? Are there gaps? Is one client too big a portion of your revenue (concentration risk)? Are you churning faster than you're growing?

These are the questions that keep you up at night, and they're the ones spreadsheets make you calculate manually every month.

Why Spreadsheets Fail at Recurring Revenue Forecasting

Spreadsheets are great for storing data. They're terrible at asking questions about it.

Consider a simple scenario: You've got $6.5k MRR today. You assume 10% monthly growth from new clients and 2% monthly churn. What's your MRR in 6 months?

In Excel, you'd build a table:

  • Month 0: $6,500
  • Month 1: $6,500 × 1.10 × 0.98 = $7,007
  • Month 2: $7,007 × 1.10 × 0.98 = $7,547
  • Month 3: $7,547 × 1.10 × 0.98 = $8,119
  • And so on...
Now, what if your 10% growth assumption is too optimistic? What if you land fewer clients than expected? You'd have to manually adjust the formula, recalculate, and hope you didn't break anything.

What if you want to know: "At what point does my revenue concentration risk become a problem?" You'd have to build another tab tracking what percentage of revenue comes from your top client, then manually update it as MRR changes.

What if you want to ask: "If Client A churns, how long until I recover?" You'd need to model that scenario separately, then compare it to your base case.

Each question requires a new tab, a new set of formulas, a new chance to introduce an error. And you're doing this manually, every month, when revenue changes.

This is why revenue forecasting frameworks that move beyond spreadsheet templates are so valuable. They let you ask "what if" questions without rebuilding your entire model.

The Core Components of a Recurring Revenue Forecast

A solid forecast has four moving parts:

1. Base Revenue (What You Have Now)

This is your starting point. List every active retainer client, the monthly amount they pay, and the contract end date (if you know it).

  • Client A: $3,000/month, no end date
  • Client B: $2,000/month, contract ends Q4 2025
  • Client C: $1,500/month, no end date
  • Total MRR: $6,500
This isn't a guess. It's what's actually in your bank account (or will be by next Friday).

2. Churn Rate (Who You'll Lose)

Churn is the percentage of revenue you lose each month to clients who leave. It's the hardest number to predict, but it's critical.

If you've been freelancing for a few years, you probably have a feel for it. Maybe one client leaves every 18 months. Maybe it's every 2 years. That's your churn rate.

For three retainer clients, if one leaves every 2 years on average, that's roughly 17% annual churn, or 1.4% monthly churn.

But here's the thing: churn isn't random. It clusters. You might lose two clients in one month, then have a dry spell for 6 months. A forecast that assumes steady 1.4% monthly churn is a simplification. But it's a useful one, because it gives you a baseline.

Forecasting recurring revenue streams requires building in realistic churn assumptions based on historical data, not wishful thinking. If you've never lost a client, don't assume 0% churn. Assume something conservative, like 2-3% monthly. You'll be pleasantly surprised if it's lower.

3. Growth Rate (Who You'll Add)

This is how much new MRR you'll add each month from new clients.

If you're actively selling and landing one new retainer every 6 months, that might be $1,500-$2,000 in new MRR per month (on average). If you're not selling at all, it's 0%.

Growth rate should be conservative. Don't assume you'll land a new client every month if you've never done it. Look at your actual history. How many retainers have you added in the past 12 months? Divide by 12. That's your monthly growth rate.

4. Expansion and Contraction (Who'll Pay More or Less)

Some clients will increase their retainer as their needs grow. Some will decrease it. Some will pause and come back.

For a conservative forecast, you might assume 0% expansion. For an optimistic one, you might assume 5% of clients expand by 10% per year.

Again, look at history. Have any of your clients increased their retainer? By how much? How often?

Building a Simple Recurring Revenue Forecast

Let's walk through a real example.

Your starting position:

  • Client A: $3,000/month (stable, 2-year contract)
  • Client B: $2,000/month (stable, month-to-month)
  • Client C: $1,500/month (growing, month-to-month)
  • Current MRR: $6,500
Your assumptions:
  • Monthly churn: 1.5% (based on losing roughly one client every 18-24 months)
  • Monthly growth: $500 (you land a new $1,500 retainer every 3 months on average)
  • Expansion: 2% of existing revenue grows by 5% per year (roughly 0.08% monthly)
  • Contraction: 0% (conservative)
The forecast:

| Month | Starting MRR | Growth | Churn | Expansion | Ending MRR | |-------|--------------|--------|-------|-----------|------------| | Jan | $6,500 | $500 | -$98 | $5 | $6,907 | | Feb | $6,907 | $500 | -$104 | $6 | $7,309 | | Mar | $7,309 | $500 | -$110 | $6 | $7,705 | | Apr | $7,705 | $500 | -$116 | $6 | $8,095 | | May | $8,095 | $500 | -$121 | $6 | $8,480 | | Jun | $8,480 | $500 | -$127 | $6 | $8,859 |

After 6 months, your MRR grows from $6,500 to $8,859. That's 36% growth, even accounting for churn.

But here's the insight that spreadsheets don't highlight: your net growth is 8.8% per month. You're adding $500 in growth and losing $127 to churn, for a net gain of $373. That's sustainable growth.

Now, what if Client A (your biggest, $3k/month) churns in Month 3? Your MRR drops to $4,705. It takes 7 more months to recover. That's a 10-month recovery window. Is that acceptable? Only you know. But now you've got the number.

This is what a forecast should do: give you concrete numbers to work with, so you can make real decisions.

Forecasting for Different Client Scenarios

Not all retainers are created equal. A forecast should account for different risk profiles.

Stable Retainers (Long Contracts, Low Churn Risk)

These are your bread and butter. Client A, with a 2-year contract, is stable. You can assume near-zero churn for the contract duration.

In your forecast, stable retainers are the foundation. They're the revenue you can count on. Everything else is built on top.

At-Risk Retainers (Month-to-Month, Early in Relationship)

Client B and C are month-to-month. They could leave anytime. A realistic forecast assumes higher churn for these clients—maybe 3-5% monthly instead of 1.5%.

This doesn't mean they'll leave. It means you should plan for the possibility.

Growing Retainers (Expansion Potential)

Client C is growing. They started at $1,500 and might expand to $2,000 as their needs grow. A forecast should model this expansion.

If you have a track record of clients expanding, include it. If not, assume 0% expansion and be pleasantly surprised when it happens.

Seasonal Retainers (Unpredictable Timing)

Some retainers spike during certain seasons. A marketing agency's retainer might increase in Q4. A game dev's support retainer might increase during a launch window.

If you have seasonal patterns, your forecast should capture them. If you don't, ignore this for now.

The Concentration Risk Problem

Here's a question most spreadsheets never ask: What percentage of your revenue comes from your top client?

This is concentration risk. If 50% of your MRR comes from one client, and that client churns, you've got a crisis. If 20% comes from your top client, you've got a manageable problem.

A good forecast tracks this.

In your example:

  • Client A is $3,000 of $6,500 = 46% of revenue
  • Client B is $2,000 of $6,500 = 31% of revenue
  • Client C is $1,500 of $6,500 = 23% of revenue
You're dangerously concentrated. Client A leaving would cut your revenue nearly in half.

A healthy concentration profile might look like:

  • Top client: 25-30% of revenue
  • Next 2-3 clients: 15-25% each
  • Rest: 20-30% combined
This gives you some buffer. If one client churns, it's painful but not catastrophic.

Your forecast should flag this. "Your top 3 clients represent 100% of revenue. Target: reduce to 80% by Q3 by adding 2 new clients." That's actionable.

Moving Beyond Manual Forecasting

Now, here's the honest truth: you could build all of this in a spreadsheet. You could set up tabs for base revenue, churn scenarios, growth projections, concentration analysis. You could update it monthly.

But you'd be spending 2-3 hours a month on it. And you'd still have to manually answer questions like "What if Client A churns?" or "How long until I hit $10k MRR?"

This is where agentic finance automation changes the game.

Instead of manually updating a spreadsheet, you feed your actual invoice and retainer data into a system that thinks about it. AI agents track your goals, project your revenue, and flag gaps before they hurt. They ask the questions you'd ask if you had time.

"Your top client is 46% of revenue. That's concentration risk." Flag.

"At your current growth rate, you'll hit $10k MRR in 8 months. Your goal was Q3. You're on track." Insight.

"If Client B churns, you recover in 7 months. If Client A churns, you recover in 10 months." Scenario analysis, automated.

"Your MRR grew $359 this month. That's 5.2% growth. Your 6-month average is 3.8%. You're accelerating." Progress tracking.

These aren't generic productivity tips. These are the specific questions a solo developer needs answered to know "how much should I be making this quarter" and "how's the business actually doing."

Recurring revenue forecasting tools that move beyond spreadsheets let you ask these questions continuously, not monthly. They give you a real-time view of your business health, not a static snapshot.

Key Metrics to Track in Your Forecast

If you're building your own forecast (spreadsheet or otherwise), track these metrics:

Monthly Recurring Revenue (MRR)

The sum of all active retainers. Your starting point.

MRR Growth Rate

Month-over-month change in MRR. If MRR grows from $6,500 to $6,907, that's 6.3% growth.

Track this over time. Are you accelerating or decelerating?

Churn Rate

Percentage of MRR lost to client departures. If you lose $100 of $6,500, that's 1.5% churn.

Track monthly. If churn spikes, investigate why.

Net Growth Rate

Growth minus churn. If you're adding 10% and losing 2%, net growth is 8%. This is the number that matters for long-term sustainability.

Customer Concentration

Percentage of revenue from your top client. If it's above 40%, you're at risk. Target 25-30%.

Months to Goal

If your goal is $10k MRR and you're at $6.5k growing at 5% monthly, you'll hit it in roughly 19 months. Is that acceptable? If not, you need to accelerate growth or adjust your goal.

Runway (If You're Burning Cash)

If expenses exceed revenue, how many months of savings do you have? This is a cash flow question, not a revenue question, but it's critical.

Building Confidence in Your Forecast

A forecast is only as good as your assumptions. Here's how to build confidence:

Use Historical Data

Don't guess your churn rate. Calculate it. Look at the past 12 months. How many clients did you lose? How much revenue did that represent? That's your churn baseline.

Same with growth. How many new retainers did you add? At what average value? That's your growth baseline.

Stress Test Your Assumptions

Assuming 1.5% monthly churn? Run a scenario where it's 3%. What happens to your forecast? If you're still healthy, great. If not, you need a buffer (more growth, more savings, or more stable clients).

Assuming $500/month in new growth? What if it's $250? What if it's $750? Build a range, not a point estimate.

Validate Against Reality

Every month, compare your forecast to actual results. Did you land the growth you expected? Did churn match your assumptions? If not, adjust.

This is how forecasts get better. They're not set-and-forget. They're living documents that evolve with your business.

Segment Your Clients

Not all churn is equal. A client with a 2-year contract has different churn risk than a month-to-month client. SaaS revenue forecasting approaches that segment customers by contract type and risk profile are more accurate than blanket assumptions.

For indie devs, this might mean:

  • Stable retainers (2-year contracts): 0.5% monthly churn
  • Medium retainers (annual contracts): 1.5% monthly churn
  • At-risk retainers (month-to-month): 3% monthly churn
Each segment gets its own forecast. Then you combine them for a total.

Forecasting for Retainer Churn and Growth Without Excel

Let's tie this back to the original problem: modeling retainer churn and growth without a 14-tab Excel monstrosity.

The key insight is that you don't need Excel's complexity. You need clarity. A good forecast system should:

1. Automatically track your current MRR based on actual invoices and contracts, not manual entry.

2. Calculate churn and growth rates from historical data, not guesses.

3. Run scenarios ("What if Client A churns?") without rebuilding the model.

4. Flag risks (concentration, churn acceleration, growth slowdown) automatically.

5. Update continuously, not monthly. As soon as a client pays or churns, the forecast adjusts.

This is what forecasting tools designed for indie developers do. They take the data you already have (invoices, contracts, expenses) and turn it into a forecast that answers the two questions: "How much should I be making?" and "How's the business actually doing?"

You don't have to update a spreadsheet. You don't have to rebuild formulas. You don't have to manually calculate scenarios. The system does it for you, continuously, so you can focus on shipping code and landing clients.

Quarterly Planning with a Recurring Revenue Forecast

Once you have a forecast, quarterly planning becomes concrete.

Q1 Planning: Your current MRR is $6,500. Your forecast shows $7,309 by end of Q1 (assuming your growth and churn assumptions hold). Your goal is $8,000 MRR by end of Q2.

That's a gap. You need to either accelerate growth (land clients faster), reduce churn (improve retention), or both.

You decide: "I'll focus on retention this quarter. I'll do monthly check-ins with each client, offer expanded scope to Client C, and try to convert Client B to an annual contract. I'll land one new client if it comes naturally, but I won't force it."

Now you've got a plan, not a wish.

Q2 Execution: You track actual results against forecast. Did Client B sign an annual contract? Did Client C expand? Did you land a new client?

If actual is tracking forecast, you're on pace. If actual is ahead, you're winning. If actual is behind, you investigate. Did a client pause? Did growth slow? Why?

Q3 Adjustment: Based on Q2 results, you adjust your forecast. Maybe your growth rate is lower than expected (1.5% instead of 2.5%). Maybe your churn is lower (0.8% instead of 1.5%). You update assumptions and recalculate.

Now your forecast for Q4 is more accurate, because it's based on reality, not guesses.

This cycle—forecast, execute, compare, adjust—is how you actually control your business. Without a forecast, you're flying blind. With one, you're flying with instruments.

The Real Value of Recurring Revenue Forecasting

At the end of the day, forecasting recurring revenue isn't about math. It's about clarity.

It's about knowing, with real numbers, whether you're on track or off track. Whether your business is healthy or at risk. Whether you should hire, invest in marketing, or focus on retention.

It's about answering "How much should I be making this quarter?" with a number you actually believe, not a number you hope for.

It's about answering "How's the business actually doing?" with data, not intuition.

For a solo programmer, that clarity is worth more than any productivity hack. It's the difference between running a business and hoping it works out.

And the best part? You don't need Excel to get there. You need a system that thinks about your numbers so you don't have to.

Forecasting frameworks designed specifically for indie developers and solopreneurs take the complexity out of revenue planning. They give you the clarity you need without the spreadsheet grind.

That's the future of indie dev finance. Not more tabs. Fewer tabs. More clarity. Less busywork.

Start with your current MRR. Add your churn and growth assumptions. Run a 12-month forecast. See where you land. Then build a plan to get where you want to go.

That's it. That's the forecast. Everything else is just execution.

Ready to take control of your revenue?
Join thousands of solo developers tracking invoices,
hitting revenue goals, and growing with AI-powered insights.
Get Started for free
2026 © Built by PADISO.CO
|TermsPrivacy