How to Organize Bills and Subscriptions in a Spreadsheet

Keep what you expect to pay separate from what you actually paid. Start with one list of recurring commitments and a second list of individual payment records, connected by a stable ID.

This gives you three different views: which commitments are active, what payments are coming due, and what payments you have recorded. A monthly cost comparison answers a different question from either a due-date list or a payment history.

The method and illustrative records below are for a spreadsheet you organize yourself. They are not instructions for specific RATIONORA workbook calculations or status rules.

Start with a recurring commitments list

Give each household bill or subscription one record. Internet service and an annual subscription can use the same structure: both have a provider, a charge and a recurring schedule. Use categories to distinguish them rather than creating disconnected lists.

  • Stable ID and name: assign a fixed label such as C001, then a recognizable name. Keep the ID when you rename or sort the record.
  • Category, expected charge and currency: record the amount per charge, not a mixture of annual and monthly equivalents. Mark variable amounts as estimates.
  • Frequency and next due date: record how often the charge recurs and the full date of the next expected payment, using the provider’s information.
  • Current status: distinguish active commitments from paused or cancelled ones.
  • Optional autopay note: record the payment setting or a non-sensitive account label. Autopay does not prove that a payment succeeded.

Keep individual payment records separately

Use a new row for each payment event rather than overwriting last month’s result. The commitment ID connects that row to the correct bill or subscription.

A due date is when a payment is expected; a payment date records when you actually paid. Keep both even when they differ. Leave an actual payment date unfilled until a payment is confirmed, rather than copying the due date into it.

A small worked example

Three commitments, several payment records

All names, amounts and dates below are invented, illustrative data in CHF. Imagine reviewing the sheet on 25 October 2026.

C001 · Home internet — monthly bill

Category: Utilities. Expected charge: CHF 50 monthly. Next due: 5 November 2026. Status: Active. Autopay note: enabled.

  • C001 · Due 5 September 2026 · Paid 4 September 2026 · CHF 50 · Paid
  • C001 · Due 5 October 2026 · Paid 5 October 2026 · CHF 50 · Paid

C002 · Photo storage — annual subscription

Category: Subscriptions. Expected charge: CHF 120 annually. Next due: 20 October 2027. Status: Active.

  • C002 · Due 20 October 2026 · Paid 20 October 2026 · CHF 120 · Paid

C003 · Electricity — variable household bill

Category: Utilities. Expected charge: CHF 80 monthly, an illustrative estimate. Next due: 10 November 2026. Status: Active. Replace the expected amount for the next charge when the bill is available.

  • C003 · Due 10 September 2026 · Paid 9 September 2026 · CHF 74 · Paid
  • C003 · Due 10 October 2026 · Paid 10 October 2026 · CHF 91 · Paid

C001 appears once in the commitments list and twice in the payment records. Both payments still belong to C001 after sorting. C003’s previous payments remain CHF 74 and CHF 91 even if you change its current expected charge.

For this review, the next dates to check are 5 and 10 November. The annual subscription remains active, but its next charge is not due in November. In a simple sheet, update next due dates yourself from the confirmed schedule; storing a frequency does not by itself create automation.

Compare monthly costs without counting payments twice

An annual CHF 120 subscription has a CHF 10 monthly equivalent for comparison: 120 ÷ 12. It still creates one actual CHF 120 payment when charged. The CHF 10 is not another payment.

Label category summaries just as carefully. In this example, the monthly-equivalent Utilities figure is CHF 130, including an estimate; October’s recorded Utilities payments total CHF 141. These describe different things. Use one currency for this simple method rather than adding unlike currencies together.

Separate commitment status from payment outcome

Active, paused and cancelled describe the ongoing commitment. Paid or legitimately skipped describe an individual event. A missed or overdue payment is not automatically a legitimate skip.

If a provider confirms that a scheduled charge will not apply, record the relevant due date and the reason for the skipped event without inventing a payment date or amount. This does not automatically cancel the commitment. Likewise, marking a record Cancelled in your sheet does not cancel a service with its provider.

When a charge changes, update the current expectation and keep earlier payment records intact. Do not rewrite the past to match the new price.

Keep relationships intact when sorting

Use a fixed ID, not the row number: C001 should still mean home internet after the list is sorted by name or due date. Sort complete tables so each row’s fields move together. Filter to focus on a category or date range without deleting older records. If you add lookup formulas, match the fixed ID rather than assuming the two lists have the same row order.

A short review routine

  1. Review upcoming due dates and confirm amounts against new bills.
  2. Check recent payments, including autopay, and add confirmed records.
  3. Update changed prices, dates or commitment statuses.
  4. Keep previous payment records intact so the history remains useful.

Choose a review interval that suits your household, and revisit the sheet when a new bill or subscription change arrives.

Excel or Google Sheets?

Either can hold these two lists. Choose the format you are comfortable maintaining and keep one main working copy. Separate Excel and Google Sheets files do not automatically synchronize.

Keep sensitive details out: do not store passwords, full payment-card numbers or banking credentials. A non-sensitive label such as “household account” may be enough to identify a payment method.

A ready-made option

Prefer to start with an existing structure?

The RATIONORA Bills & Subscriptions Tracker provides Excel and Google Sheets versions with recurring commitment records, due dates and dedicated payment history linked by stable Commitment IDs. It keeps past payments separate from future obligations. It does not sync with your bank or make payments.

Explore Bills & Subscriptions Tracker →
Find your system

What would you like to bring into order?

Choose the situation that feels closest to yours.