DEV Community

Alex Rowan
Alex Rowan

Posted on Originally published at agent-run-agency-site.pages.dev

When Is an Invoice Overdue? A Spreadsheet Setup That Tells You, and What to Send

By Alex Rowan

Disclosure: I sell the tracker linked below.

An invoice is overdue the day after its due date passes unpaid. The hard part isn't the definition. It's noticing on that day, not three weeks later when rent is due. Below is a small sheet setup that does the noticing for you, and a follow-up schedule to go with it.

Step 1: Get the due date right

The due date comes from your payment terms, counted from the invoice date:

  • Net 14: issued 1 Oct → due 15 Oct → overdue from 16 Oct.
  • Net 30: issued 1 Oct → due 31 Oct → overdue from 1 Nov.
  • Due on receipt: due the day they get it. Give yourself a practical window (I use 7 days) before chasing.

If your invoice didn't state terms, the client's accounts team will usually apply their own (often 30 days or more). Put the terms on every invoice from now on.

Formula (issue date in C, terms in days in D):

Due date:  =C2+D2
Enter fullscreen mode Exit fullscreen mode

Step 2: Flag it automatically

Add these columns (due date in E, amount in F, paid date in G):

Status:        =IF(G2<>"","Paid",IF(TODAY()>E2,"Overdue","Unpaid"))
Days overdue:  =IF(G2<>"","",MAX(0,TODAY()-E2))
Enter fullscreen mode Exit fullscreen mode

Conditional formatting: red when Days overdue > 0, amber when the due date is within the next 3 days.

Step 3: Add a "next follow-up" column

This is the part most templates skip. Add Last chased (H, a date you type) and Next follow-up (I):

=IF(G2<>"","",IF(H2="",E2+1,H2+7))
Enter fullscreen mode Exit fullscreen mode

That means: first chase the day after the due date, then every 7 days after your last chase. Sort by Next follow-up each morning or week, and whatever is dated today or earlier gets an email.

Invoice # Client Due Amount Paid Status Days overdue Last chased Next follow-up
1042 Pine Studio 2026-10-31 $1,200 Unpaid 0 2026-11-01
1039 Oak & Co 2026-09-30 $450 Overdue 13 2026-10-08 2026-10-15
1037 Harbor Bakery 2026-09-20 $300 2026-09-22 Paid

Step 4: The follow-up schedule

When What Tone
3 days before due Optional heads-up with the invoice attached Friendly
Day 1 overdue Confirm they received it; ask when it will be paid Assume it slipped
Day 7 Ask for a specific payment date; copy their accounts address if you have it Polite, specific
Day 14 Phone or video call. Check your agreement about pausing new work Direct
Day 30 Written notice: amount, days overdue, any late fee your contract allows, a deadline Formal

Day 1 email

Subject: Invoice 1039, due 30 Sep
Hi Sam, a quick check that invoice 1039 ($450, due 30 Sep) reached you. It's attached again. Could you let me know when it's scheduled for payment? Thanks, Alex

Day 7 email

Subject: Re: Invoice 1039, due 30 Sep
Hi Sam, following up on invoice 1039, now 7 days past due. Could you confirm a payment date? If anything is missing on my side, like a PO number or a tax form, tell me and I'll send it today.

Keep every reminder in the same email thread, and log each one in "Last chased".

Notes

  • A "we're processing it" reply isn't a date. Ask for the date.
  • Late fees only apply if your contract or invoice terms say so. Check before you mention one.
  • A free sheet is enough if you can commit to looking at it once a week. If you won't, a free invoicing app that sends reminders automatically is the better choice. Pick the one you'll actually keep up.

A ready-made version

My Freelance Client & Invoice Tracker ($19, Google Sheets or Excel) fills in due dates and Unpaid / Overdue / Paid status on its own, and shows money still owed on a dashboard. Note that it doesn't send reminders. You still send the emails above yourself.

Top comments (0)