ExcelReady
CourseMock testsFunction guidesBlog
Start freeStart learning for free
ExcelReady

Be Excel-ready before day one. Hands-on practice in your browser, with instant feedback.

Learn

  • Course
  • Mock tests
  • Function guides
  • Blog

Test prep

  • Excel level test
  • Excel test practice
  • Free screening quiz
  • Certificate

Company

  • About
  • Editorial policy
  • Contact
  • Terms
  • Privacy

© 2026 ExcelReady. All rights reserved.

  1. Blog
  2. Projects
  3. Build a Subscription Tracker in Excel

Build a Subscription Tracker in Excel

By ExcelReady Team·Updated November 2, 2026·7 min read

The short answer

A subscription tracker in Excel is a table with one row per service: name, category, cost, billing cycle in months and last payment date. Add =EDATE(last_paid, months) for the next renewal, =cost/months for the monthly cost, and SUMIF to total by category. Conditional formatting can then flag renewals due in the next seven days.

Key takeaways

  • Store the billing cycle as a number of months (1 for monthly, 12 for yearly) so one formula handles every plan.
  • =EDATE(last_paid, months) gives the next renewal date, even at month ends.
  • Cost divided by months turns yearly plans into a fair monthly cost you can add up.
  • SUMIF totals the monthly cost by category, and SUMIFS with TODAY() shows what is due soon.
On this page+
  1. Step 1: Set up the table
  2. Step 2: Find the next renewal date with EDATE
  3. Step 3: Turn every plan into a monthly cost
  4. Step 4: Total by category with SUMIF
  5. Step 5: Flag renewals that are due soon
  6. Ideas to extend your tracker
  7. Common problems and fixes
  8. Practise it

A subscription tracker in Excel shows every recurring payment in one place: what each service costs, when it renews and how much you spend per month. You need one table and four formulas: EDATE for the renewal date, a division for the monthly cost, SUMIF for category totals and TODAY for the days left. This guide builds it step by step, and the same skills show up in office tasks like tracking software licences or supplier contracts.

Step 1: Set up the table#

Start with one row per subscription and one column per fact. Type these headers in row 1 and fill in your services:

ABCDE
1ServiceCategoryCostMonthsLast paid
2StreamingEntertainment15.99112 Oct 2026
3MusicEntertainment10.99120 Oct 2026
4Cloud storageWork99.99121 Mar 2026
5GymHealth45.0015 Oct 2026
6News siteReading120.001215 Jan 2026
7Design appWork12.99128 Oct 2026

The key design choice is column D. Instead of typing "Monthly" or "Yearly", store the billing cycle as a number of months: 1 for monthly, 3 for quarterly, 12 for yearly. One formula can then handle every plan.

Two more tips:

  • Type real dates in column E, such as 12/10/2026 or 2026-10-12, so Excel stores them as dates rather than text. Dates sit on the right of the cell by default; text sits on the left.
  • Turn the range into a table with Ctrl+T (Mac: ⌘T). New rows then pick up the formulas automatically.

Step 2: Find the next renewal date with EDATE#

EDATE adds a number of months to a date. In F1 type "Next renewal", and in F2:

Excel formula
=EDATE(E2,D2)

Fill it down (Windows: Ctrl+D; Mac: ⌘D). Streaming renews on 12 Nov 2026, Cloud storage on 1 Mar 2027 and the News site on 15 Jan 2027. If you see a number like 46338 instead of a date, format the column as a date with Ctrl+1 (Mac: ⌘1).

EDATE is safer than adding 30 or 365 days. It keeps the same day of the month and handles short months: a plan paid on 31 January renews on 28 February (29 in a leap year). The EDATE function guide has more examples, and EDATE vs EOMONTH explains when you want the end of the month instead.

When you pay, just update the Last paid date and the renewal moves forward by itself.

Optional: roll the renewal date forward automatically#

If you'd rather enter the start date once and never update it, this formula finds the next renewal after today:

Excel formula
=EDATE(E2,D2*(INT(DATEDIF(E2,TODAY(),"m")/D2)+1))

DATEDIF counts the whole months since the start date, INT rounds that down to whole billing cycles, and EDATE adds one more cycle. On 2 November 2026 it gives the same dates as Step 2. It returns #NUM! if the start date is in the future, so use it only for plans that have already started.

Step 3: Turn every plan into a monthly cost#

Yearly and monthly prices can't be added directly. Divide each cost by its billing cycle. In G1 type "Monthly cost", and in G2:

Excel formula
=C2/D2

Monthly plans stay the same. Cloud storage becomes 8.33 per month (99.99 ÷ 12) and the News site becomes 10.00. Now add the column:

Excel formula
=SUM(G2:G7)

The result is about 103.30 per month. Multiply by 12 for the yearly figure: about 1,239.63. Seeing the yearly number is often the moment people cancel something.

Step 4: Total by category with SUMIF#

SUMIF adds the numbers whose row matches one condition. List the categories in J2:J5 (Entertainment, Work, Health, Reading) and in K2 type:

Excel formula
=SUMIF($B$2:$B$7,J2,$G$2:$G$7)

Fill down. Entertainment comes to 26.98, Work to 21.32, Health to 45.00 and Reading to 10.00. The $ signs lock the ranges so they don't move as you fill. The SUMIF function guide explains each argument.

To see what is due soon, SUMIFS adds the full cost of every renewal in the next 30 days:

Excel formula
=SUMIFS(C2:C7,F2:F7,">="&TODAY(),F2:F7,"<="&TODAY()+30)

On 2 November 2026 that returns 84.97: Streaming, Music, Gym and Design app all renew before 2 December. The & joins the operator to the date. Writing ">=TODAY()" inside the quotes would not work.

Step 5: Flag renewals that are due soon#

A Days left column and one colour rule turn the table into a reminder. In H1 type "Days left", and in H2:

Excel formula
=F2-TODAY()

Format the column as a number, not a date. On 2 November 2026, the Gym shows 3. TODAY updates every time the file recalculates, so the count goes down each day.

Then select A2:H7, go to Home > Conditional Formatting > New Rule > Use a formula to determine which cells to format, and enter:

Excel formula
=$H2<=7

Pick an orange fill. Any service that renews within a week is now coloured across the whole row. The $ before H keeps every cell checking the Days left column.

Ideas to extend your tracker#

Once the basics work, a few small columns make the tracker more useful:

  • Status (Active or Cancelled). Use SUMIFS with "Active" so cancelled services drop out of the totals.
  • Payment method, so you know which card to update when it expires.
  • Notes, such as the cancellation deadline or a shared login owner.
  • Annual cost with =G2*12, if you think in yearly budgets.

The same structure works for other trackers. Recurring payments with due dates fit a bill tracker, day-to-day spending fits an expense tracker, and stock levels fit an inventory tracker. For a business view of income against costs, see how to build a profit and loss statement.

Common problems and fixes#

These are the issues that come up most when building a subscription tracker:

  1. EDATE shows a number. The formula is right; the cell is formatted as General. Apply a date format.
  2. #VALUE! in the renewal column. The Last paid date is stored as text. Retype it, or check that it sits on the right of the cell.
  3. The monthly total looks too high. A yearly plan has 1 in the Months column instead of 12.
  4. SUMIF returns 0 for a category. The category name is spelled differently, or has an extra space. Use a drop-down list in column B to keep names consistent.

Practise it#

Start with the exercise on this page: one EDATE formula gives the next renewal. Then practise EDATE, EOMONTH and WEEKDAY in a live spreadsheet, where you work out renewals and month-ends, and practise SUMIF to build category totals. Each formula you type is checked instantly.

Try it yourself

This is a live spreadsheet. Type the formula in the green cell and press Enter.

In E2, find the next renewal date for the Streaming plan: add the billing cycle in C2 (months) to the last payment date in D2 with EDATE, then press Enter.

fx
ABCDEF
1
Service
Cost
Months
Last paid
Next renewal
2
Streaming
15.99
1
46307
3
Cloud storage
99.99
12
46082
4
Gym
45
1
46300
5
News site
120
12
46037
6
7
8

Tip: EDATE takes a start date and a number of months: =EDATE(D2,C2).

Practise this in a lesson

LessonRenewals and month-ends: EDATE, EOMONTH, WEEKDAYShift dates by whole months with EDATE, jump to month-end with EOMONTH, and find the day of the week with WEEKDAY.LessonSUMIFAdd up only the numbers that meet a condition, with and without a separate sum range.Function guideEDATEAdd months to a date with Excel's EDATE for renewals, probation ends and due dates. Month-end behaviour, mistakes and a live practice exercise.Function guideSUMIFAdd up values that meet one condition with SUMIF. Totals by category, person or amount, the argument-order trap, and a live exercise.

Frequently asked questions

How do I track subscriptions in Excel?

+

Make a table with the service, category, cost, billing cycle in months and the last payment date. Add formulas for the next renewal (EDATE), the monthly cost (cost divided by months) and totals by category (SUMIF).

How do I calculate the next renewal date in Excel?

+

Use EDATE: =EDATE(E2,D2) adds the number of months in D2 to the last payment date in E2. Format the cell as a date. EDATE handles short months, so 31 January plus one month gives 28 February in a non-leap year.

How do I get a reminder for upcoming renewals?

+

Add a Days left column with =F2-TODAY(), then a conditional formatting rule such as =$H2<=7 to colour rows due within a week. Excel can't send alerts by itself, but the colour shows up every time you open the file.

How do I compare monthly and yearly subscriptions?

+

Convert everything to one unit. Divide each cost by its billing cycle in months to get a monthly cost, or multiply that by 12 for a yearly cost. Then the plans can be added and compared fairly.

Sources

  • EDATE function - Microsoft Support
  • SUMIF function - Microsoft Support
  • TODAY function - Microsoft Support

Written and checked by the ExcelReady Team. First published November 2, 2026. The practice exercise runs in the same formula engine as our lessons. Found a mistake? Read our editorial policy or email hello@excelready.app.

On this page

  1. Step 1: Set up the table
  2. Step 2: Find the next renewal date with EDATE
  3. Step 3: Turn every plan into a monthly cost
  4. Step 4: Total by category with SUMIF
  5. Step 5: Flag renewals that are due soon
  6. Ideas to extend your tracker
  7. Common problems and fixes
  8. Practise it

Keep reading

Projects· 5 min read

Track Expenses by Category in Excel

To make an expense tracker in Excel, log one expense per row with its date, description, category and amount. Then total each category with SUMIF, for example =SUMIF(C:C,"Travel",E:E), and add a month condition with SUMIFS. A pivot table gives the same category and month totals in a few clicks, and both update when you add expenses.

Projects· 7 min read

Make an Inventory Tracker in Excel

To make an inventory tracker in Excel, keep two tables: a product list with each item's opening stock and reorder level, and a log with one row for every delivery or sale. SUMIF adds the stock in and out for each product, so current stock is opening plus in minus out. An IF formula and conditional formatting flag items to reorder.

Projects· 5 min read

Build a Bill Tracker in Excel

List each bill in a row with its due date, amount and a Paid column of Yes or No. Add =B2-TODAY() to count the days left, total what you still owe with =SUMIF(D2:D7,"No",C2:C7), and use conditional formatting with =AND($D2="No",$B2<TODAY()) to turn overdue bills red. It works in any version of Excel.

More on projects

  • How to Analyse Survey Results in Excel
  • Build a Task Tracker in Excel With Status and Due Dates
  • Make a Simple Timesheet in Excel With Formulas
  • Build an Employee Training Tracker in Excel
  • How to Build an Accounts Receivable Aging Report in Excel
  • Appointment Tracker in Excel for Clinics and Small Teams
All projects articles →

Don't just read about Excel. Do it.

Practise real formulas in a live spreadsheet with instant feedback, right in your browser. Nothing to download.

Start learning for free