Debt Snowball Spreadsheet: How to Build One in Excel or Google Sheets (With a Worked Example)
Build a debt snowball spreadsheet step by step: debt list, payoff order, monthly schedule with interest, payoff dates with NPER, a snowball vs avalanche comparison and a worked three-debt example.
Quick answer: a debt snowball spreadsheet lists every debt with its balance, interest rate (APR) and minimum payment, sorts the debts from the smallest balance to the largest, and then runs a month-by-month schedule. Each month you pay the minimum on every debt and put all extra money on the smallest one. When that debt is gone, its payment “rolls” onto the next one, so the amount attacking each debt grows like a snowball. The sheet shows the payoff month of each debt, the total interest you will pay and the date you will be debt-free.
Below is a layout you can build in about 30 minutes in Excel or Google Sheets, plus a worked example with three debts. The numbers are illustrative; this is a planning tool, not financial advice.
Snowball vs avalanche in one table
| Debt snowball | Debt avalanche | |
|---|---|---|
| Payoff order | Smallest balance first | Highest interest rate first |
| Main advantage | Quick early wins keep you motivated | Lowest total interest |
| Main drawback | Usually costs a bit more interest | The first payoff can take many months |
| Best for | People who need visible progress to stay on track | People who are comfortable with a long first stretch |
The spreadsheet below handles both: only the sort order changes. That makes it easy to see the real cost difference for your own debts before you choose.
Step 1: The debt list
Create a sheet called Debts with one row per debt:
| Column | Field | Notes |
|---|---|---|
| A | Debt name | Card or loan name |
| B | Current balance | From the latest statement |
| C | APR | Enter as a percentage, e.g. 18% |
| D | Minimum payment | Monthly |
| E | Snowball order | =RANK.EQ(B2,$B$2:$B$10,1) — 1 = smallest balance |
| F | Avalanche order | =RANK.EQ(C2,$C$2:$C$10,0) — 1 = highest APR |
Above the table, add two input cells: extra monthly payment (B12, the money you can add beyond all minimums) and total monthly budget (B13): =SUM(D2:D10)+B12. The total budget stays the same every month, which is the whole point: when a debt is paid off, its minimum is not spent elsewhere, it moves to the next debt.
Not sure how much extra you can add? Work it out from a full monthly budget template first: the extra payment should be money you can commit to every month, not a hopeful guess.
Step 2: The monthly schedule
On a sheet called Schedule, give each debt a block of three columns: interest, payment and ending balance. Rows are months 1, 2, 3 and so on. For one debt (balance in column D, previous month in the row above):
- Interest:
=ROUND(D_prev*APR/12,2)— a monthly approximation; card issuers usually calculate daily, so your statement will differ by a few cents. - Minimum due:
=MIN(Minimum, D_prev+Interest)— so the last payment is never larger than what is owed. - Ending balance:
=MAX(0, D_prev+Interest-Payment)
The payment column is where the snowball happens. The cleanest way to build it is in two parts:
- Money left for the target debt in a helper column: total budget minus all minimum payments due this month.
- Payment on each debt: its minimum due, plus the leftover money if it is the first debt (in your chosen order) that still has a balance. Any surplus after that debt is cleared spills to the next one in the order.
In Excel 365 or Google Sheets, a compact way to find the current target is =INDEX(SORTBY(DebtNames,Order,1),MATCH(TRUE,INDEX(SORTBY(PrevBalances,Order,1)>0,0),0)), which returns the first debt in order that is not yet paid off. If you prefer simple formulas, a manual “target” column you update when a debt hits zero works just as well for three to five debts.
Step 3: Payoff dates and totals
- Payoff month for each debt:
=MATCH(0,DebtBalanceColumn,0)returns the first month where the balance is zero. - Payoff date:
=EDATE(StartDate,PayoffMonth-1), formatted as month and year. - Total interest:
=SUM(all interest columns). - Debt-free date: the latest payoff date,
=MAX(payoff dates).
A quick sanity check for a single debt without the snowball: =NPER(APR/12,-Payment,Balance) gives the number of months to pay it off at a fixed payment. Use it to verify the schedule for the last debt once all others are cleared.
Worked example: three debts, $200 extra per month
| Debt | Balance | APR | Minimum |
|---|---|---|---|
| Store card | $600 | 18% | $25 |
| Credit card | $2,400 | 26% | $72 |
| Car loan | $6,500 | 7% | $210 |
| Total | $9,500 | $307 |
With $200 extra, the monthly budget is $507. Month 1 under the snowball:
- Store card: interest $600 × 18% / 12 = $9.00; payment $25 + $200 = $225; ending balance $384.00.
- Credit card: interest $2,400 × 26% / 12 = $52.00; payment $72; ending balance $2,380.00.
- Car loan: interest $6,500 × 7% / 12 = $37.92; payment $210; ending balance $6,327.92.
Running the schedule to the end (monthly interest, rounded to cents) gives:
| Plan | Order | First debt gone | Debt-free | Total interest |
|---|---|---|---|---|
| Snowball, $200 extra | Store → Credit → Car | Month 3 | Month 21 | $919.67 |
| Avalanche, $200 extra | Credit → Store → Car | Month 10 | Month 21 | $883.36 |
| Same order, no extra ($307/month, payments still rolled over) | Store → Credit → Car | Month 30 | Month 39 | $2,377.81 |
Three takeaways from this example:
- The extra $200 matters far more than the method. It cuts 18 months and about $1,460 of interest ($2,377.81 − $919.67 = $1,458.14).
- The avalanche saves $36.31 here, because the credit card has the highest rate. With other balances and rates, the gap can be much larger, so test your own numbers.
- The snowball clears the first debt in month 3 instead of month 10. If that early win is what keeps you on plan, it can be worth the extra cost.
Step 4: A simple dashboard
At the top of the Debts sheet, show the numbers you will check every month:
- Total remaining and percentage paid:
=1-CurrentTotal/StartingTotal. - Debts left:
=COUNTIF(CurrentBalances,">0"). - Next payoff: the debt name and month from Step 3.
- A line chart of total balance by month, planned vs actual.
Once the formulas work, lock them so a stray click does not break the schedule; the guide on how to protect formulas in Excel shows how to leave only the input cells editable.
Step 5: Update it with real numbers
A plan drifts from reality: rates change, you make a bigger payment one month, a new charge appears. Once a month:
- Add an Actual column next to each planned ending balance and type the balance from the statement.
- If actual and planned differ, restart the schedule from the actual balances rather than chasing the old plan.
- Keep the cards you are paying down out of daily use; otherwise the snowball melts as fast as it rolls.
Common mistakes
- Spending the freed-up minimum after a debt is paid off instead of rolling it forward. The total monthly budget must stay fixed.
- Using the wrong rate: promotional 0% rates end. Add the end date and the rate after it to the debt list.
- Skipping an emergency buffer: without one, the next car repair goes on a card and undoes months of progress.
- Forgetting annual fees or penalty rates that change the real cost of a card.
FAQ
Does the debt snowball include a mortgage?
Many people leave the mortgage out and focus on consumer debts (cards, personal loans, car loans) first, because mortgages are large, long and usually lower-rate. The spreadsheet works either way; just remember the debt-free date will stretch a long way if the mortgage is included.
Can I use this in Google Sheets?
Yes. RANK.EQ, INDEX, MATCH, SORTBY-style sorting (SORT in Sheets), EDATE and NPER all work. Google Sheets also makes it easy to share the tracker with a partner.
Is the snowball or the avalanche better?
Mathematically, the avalanche costs less interest when rates differ. In practice, the best method is the one you will stick with for the whole plan. Build both orders in the sheet and compare the difference in dollars before deciding.
More personal finance guides: Debt Payoff & Savings.