Invoice tracker spreadsheets cover the simplest invoicing workflow: one row per invoice, status dropdown, current outstanding balance. This template adds two pieces most homemade trackers miss — automatic days-outstanding calculation and summary cards showing totals by status.

The data validation on the Status column gives you four choices: Draft (not yet sent), Sent (issued, awaiting payment), Paid (closed), Overdue (past due date). Conditional formatting paints each status: green for Paid, red for Overdue, yellow for Sent.

How to use

  1. Download the template. Open in Excel, Google Sheets, or LibreOffice.
  2. Cell K1 holds today’s date — drives the Days outstanding formula.
  3. Fill rows 9+. Don’t overwrite columns G (Outstanding) or J (Days out) — those are formulas.
  4. Use the Status dropdown to mark each invoice. The summary cards at the bottom update automatically.
  5. To support partial payments, enter the received amount in column F. The Outstanding column shows the gap.

When the tracker is the wrong tool

The tracker works while your workflow is “I sent it, did they pay yet?” It stops working when:

For matched payment reconciliation, drop your bank CSV and invoice CSV into checkunpaidinvoices.com — the tool returns the four-bucket result with explicit match reasons. Free tier handles up to 50 invoices per run.

FAQ

Can I use this for project-based invoicing with milestones?

Yes, but treat each milestone as a separate invoice row. Don’t try to track milestones inside a single row — Excel will not help you with that and the column count explodes.

What does “Days out” show for Paid invoices?

Nothing — the formula returns empty for Paid and Draft. Days outstanding is meaningless once paid (the invoice is closed) or before issue (Draft has no clock).

Does this work with Google Sheets?

Yes. The dropdown data validation translates to Sheets via Data → Data validation. Conditional formatting rules may need re-creating in Sheets’s rule editor.

Why “Sent” instead of “Pending”?

“Sent” tells you what you did. “Pending” tells you about the client’s state, which you don’t actually know until they confirm. Tracking what you did is more useful than guessing about them.