Revenue Intelligence Blog

AR Aging & Collections Playbook for SaaS Companies

 

The Uncomfortable Truth About SaaS Collections

Recurring revenue creates an illusion of predictability — but predictable billing doesn't mean predictable collection. An invoice that goes unpaid for 60 days isn't just a delayed payment; depending on your accounting policy, it may need to be provisioned as potential bad debt, and it's quietly distorting your cash flow projections the entire time it sits unresolved.

A proper AR aging and collections process exists to catch this early, systematically — not reactively, once someone happens to notice a large balance.

AR Aging Buckets: The Foundation

Most finance teams organize outstanding receivables into Days Past Due (DPD) buckets:

  • 0-30 days — normal, expected range for most payment terms
  • 31-60 days — worth active attention; this is where a proactive follow-up sequence should already be underway
  • 61-90 days — genuine concern; escalation beyond routine reminders is warranted
  • 90+ days — high risk; this is typically the threshold where bad debt provisioning starts being considered, depending on your accounting policy

The value of these buckets isn't just organizational — it's that different DPD tiers warrant genuinely different actions, not the same generic reminder email sent later.

Dunning: Escalation, Not Repetition

A good dunning sequence isn't the same email sent three times with different subject lines. It should escalate in tone and channel as an invoice ages:

  • Early (a few days overdue) — a friendly, automated reminder; most overdue invoices at this stage are simple oversights, not genuine payment problems
  • Mid-range — a more direct communication, potentially involving the account owner directly, not just an automated system
  • Late-stage — this is where a real conversation is warranted — understanding why payment hasn't happened, whether it's a cash flow issue on the customer's side, a dispute over the invoice itself, or something else entirely

Promise-to-Pay: Tracking Commitments, Not Just Reminders

When a customer says "we'll pay by Friday," that commitment needs to be tracked as a specific, dated promise — not treated the same as an invoice that's simply sitting unpaid with no communication at all. A customer who's engaged and has given a specific commitment is a fundamentally different collections situation than one who's gone silent, and treating them identically wastes effort and risks damaging a relationship that didn't need escalation.

Payment Scoring: Not All Customers Age the Same Way

A customer with a consistent history of paying 5 days late, every cycle, is a different risk profile than a customer who's always paid on time but is suddenly 45 days overdue for the first time. A payment score that accounts for historical behavior, not just current status, helps a collections team correctly prioritize attention — the "always a little late" customer might not need urgent escalation, while the "sudden change in behavior" customer might need it more than their current DPD bucket alone would suggest.

The Real Cost of Getting This Wrong

Poor AR management doesn't just mean cash sitting uncollected longer than necessary — it compounds:

  • DSO (Days Sales Outstanding) creeps up, distorting cash flow forecasts
  • Bad debt provisioning decisions get made too late, or too generously, without a systematic threshold behind them
  • Customer relationships can be genuinely damaged by generic, poorly-timed dunning that doesn't account for context — chasing a customer over an invoice that's actually already been paid (a common issue when TDS deductions aren't properly reconciled) is a particularly avoidable, relationship-damaging mistake

What This Should Look Like, Automated

A well-run collections process should automatically:

  • Bucket every invoice by DPD, continuously, not as a monthly manual exercise
  • Send escalating dunning communications on a defined schedule, adapted to each customer's payment history
  • Track promise-to-pay commitments as distinct, dated items requiring follow-up
  • Flag genuinely high-risk accounts for bad debt review, based on a consistent threshold — not ad hoc judgment calls made under time pressure

This is exactly the kind of continuous, automated collections workflow Fincelo's Collections Agent runs daily for India SaaS companies — freeing finance teams from manual AR chasing while keeping every customer relationship handled appropriately for their actual situation.

See how Fincelo automates collections →


Fincelo is an agentic AI-powered SaaS billing and revenue intelligence platform, built for Series A/B India SaaS companies and their CFOs.

How to Build a Renewal Pipeline That Prevents SaaS Churn

 

Most SaaS Companies Find Out About Churn Too Late

Here's a pattern we see constantly: a customer's contract quietly approaches its end date, nobody flags it internally until a week before expiry, and by then there's no real time left to address whatever issue was driving them toward non-renewal. The churn wasn't inevitable — it just wasn't caught early enough to do anything about it.

A good renewal pipeline fixes this by turning "renewal" from a single deadline into a monitored process with real lead time.

The Core Idea: Alert Early, Not Just Once

Rather than a single "contract ends in 30 days" reminder, an effective renewal pipeline uses a staged alert cadence — commonly at 180, 90, 30, and 7 days before contract end:

  • 180 days out — early visibility. Plenty of time to address any brewing issues, plan an expansion conversation, or simply confirm the relationship is healthy
  • 90 days out — start active renewal conversations for anything not already progressing
  • 30 days out — escalate anything still unresolved; this is the point where a stalled renewal needs direct attention, not just a check-in
  • 7 days out — final urgency flag; anything still open here needs immediate action

The point of staging alerts this way isn't just reminders — it's giving your team enough runway to actually change the outcome, rather than just documenting that churn happened.

Health Scoring: Knowing Which Renewals Need Attention

Not every renewal needs the same level of proactive attention. A well-built renewal pipeline scores accounts across multiple dimensions to flag risk before the renewal date even approaches:

  • Payment behavior — a customer with a clean payment history is a different risk profile than one that's been chronically late
  • Product usage — declining usage is often the earliest real signal of churn risk, well before any contract conversation happens
  • Support engagement — a spike in support tickets, or conversely, total silence from a previously engaged account, can both be meaningful signals
  • Contract terms — auto-renewal clauses, price escalation terms, and grace period provisions all affect how a renewal should actually be handled

Grace Periods: The Detail Most Pipelines Get Wrong

When a contract lapses without a signed renewal, what happens next matters enormously — and it shouldn't be a judgment call made in a panic. A defined grace period (commonly 30-45 days) gives room to complete a renewal in progress without immediately suspending customer access, which would only accelerate churn rather than prevent it.

But grace periods need boundaries too: if a renewal genuinely isn't happening, continuing to extend access indefinitely just delays the inevitable while creating unbilled revenue exposure.

What Good Renewal Data Actually Looks Like

At minimum, a proper renewal pipeline should track, per account:

  • Contract end date and current status (monitoring, in negotiation, signed, churned)
  • A calculated health score, updated regularly — not just at renewal time
  • Whether there's a genuine expansion opportunity alongside the renewal itself
  • Price escalation terms already built into the contract, so renewal quotes reflect what was actually agreed, not a guess

Why This Usually Breaks Down in Practice

The theory here isn't complicated. The reason most companies still struggle with it is operational: tracking dozens or hundreds of renewal dates, health signals, and alert cadences manually, in a spreadsheet, simply doesn't scale — and the moment it doesn't scale, the alerts stop firing reliably, and you're back to finding out about churn a week before it happens.

This is exactly the kind of continuous monitoring Fincelo's Renewal Agent automates — running the 180/90/30/7-day cadence automatically, scoring account health continuously, and surfacing genuinely at-risk renewals to your team with enough lead time to actually act.

See how Fincelo automates renewal monitoring →


Fincelo is an agentic AI-powered SaaS billing and revenue intelligence platform, built for Series A/B India SaaS companies and their CFOs.

Powered by Blogger.