Debt Snowball vs Avalanche Spreadsheet: Build It and Compare
By Cedar & Ledger · Updated October 31, 2026
The debt snowball pays off your smallest balance first. The debt avalanche pays off your highest interest rate first. Plenty of articles explain the difference (ours is here). This guide is about the next step: building a spreadsheet that runs your debts through both methods, so you can see the payoff dates and total interest side by side before you commit.
You can build it in Google Sheets or Excel. It takes an hour or so the first time, mostly copying formulas. The example numbers below are made up.
How both methods actually work
Every month you pay a fixed total toward debt, say $750. Each debt gets its minimum payment. Whatever is left over, the "extra", goes to one target debt. When the target is paid off, its minimum and the extra roll over to the next target, so the amount aimed at each new target keeps getting bigger. The only difference between the two methods is the order of targets:
- Snowball: smallest balance first.
- Avalanche: highest APR first.
Your spreadsheet needs to do the same thing a month at a time: add interest, pay minimums, send the extra to the current target, and move on.
Step 1: The Debts tab
Create a tab called Debts with these headers in row 1: Debt, Balance, APR %, Minimum, Snowball order, Avalanche order. Enter one debt per row from row 2. Get the balance, APR and minimum from your latest statements (how to read a credit card statement shows where to find them).
In a cell off to the side, say H1, type "Monthly budget" and put your total monthly debt payment in H2. It has to be at least the sum of all the minimums. Add a check under it:
=IF(H2 < SUM(D2:D11), "Budget is below your minimums", "OK")
Now the two payoff orders. With debts in rows 2 to 11:
Snowball order (E2): =RANK(B2, $B$2:$B$11, 1)
Avalanche order (F2): =RANK(C2, $C$2:$C$11, 0)
The 1 ranks smallest balance first; the 0 ranks highest rate first. If two debts tie, change one of them by a cent or decide the order yourself and type it in.
Step 2: Our example debts
| Debt | Balance | APR | Minimum | Snowball order | Avalanche order |
|---|---|---|---|---|---|
| Medical bill | $900 | 0% | $50 | 1 | 4 |
| Credit card | $6,500 | 26.99% | $165 | 3 | 1 |
| Car loan | $8,200 | 6.5% | $240 | 4 | 3 |
| Personal loan | $3,100 | 11% | $95 | 2 | 2 |
Monthly budget: $750. The minimums add up to $550, so there's $200 of extra at the start. This is a case where the two orders really differ: the snowball goes after the 0% medical bill first, and the avalanche goes after the 26.99% card.
Step 3: The schedule tab, one per method
Create a tab called Snowball. Column A is the month number (1, 2, 3 … down to 360 for 30 years; type 1 and 2, select both and drag down). Then, for each debt, use three columns: Start balance, Interest, Payment. After the debts, add two helper columns: Target and Extra, plus Total left.
The logic for each month (row) is:
- Start balance in month 1 is the balance from the Debts tab. In later months it's last month's start balance + interest − payment.
- Interest is an estimate: start balance × APR ÷ 12. In Sheets:
=ROUND(B2 * Debts!$C$2 / 100 / 12, 2). - Target is the open debt (start balance above zero) with the lowest order number.
- Extra is the monthly budget minus the minimums of every debt that's still open.
- Payment is the minimum for every open debt, plus the extra for the target, but never more than what's owed (balance + interest).
In Google Sheets, with the four debts' start balances in B, E, H and K, the helper formulas for row 2 look like this:
Target (N2):
=IFERROR(INDEX(Debts!$A$2:$A$5, MATCH(MIN(FILTER(Debts!$E$2:$E$5,
{B2;E2;H2;K2} > 0)), Debts!$E$2:$E$5, 0)), "Done")
Extra (O2):
=Debts!$H$2 - SUMPRODUCT(({B2;E2;H2;K2} > 0) * Debts!$D$2:$D$5)
Payment for the first debt (D2):
=IF(B2 <= 0, 0, MIN(B2 + C2, Debts!$D$2 + IF($N2 = Debts!$A$2, $O2, 0)))
Copy the payment formula to the other debts, changing the cell references to that debt's columns and row on the Debts tab. Start balance for row 3 of the first debt is =MAX(0, B2 + C2 - D2). Total left is the sum of the start balances. Then select row 3 and fill it down.
When the schedule works, duplicate the tab, rename it Avalanche and change the Target formula to use column F (avalanche order) instead of E. Everything else stays the same.
One simplification to know about: in the month a target gets paid off, any leftover part of the extra isn't moved to the next debt until the following month. Real payoffs can be a little faster than the sheet shows. That's fine for comparing methods, and it keeps the formulas readable.
Step 4: Read the results
Add a small results box on the Debts tab for each method:
- Months to debt-free:
=COUNTIF(Snowball!P2:P361, ">0"), where P is the Total left column. - Total interest: the sum of all the interest columns, e.g.
=SUM(Snowball!C2:C361, Snowball!F2:F361, Snowball!I2:I361, Snowball!L2:L361). - Debt-free month:
=EDATE(first_payment_date, months - 1), formatted as a month and year.
For our example debts, run through the formulas above, the results come out like this:
| Snowball | Avalanche | |
|---|---|---|
| First debt paid off | Medical bill, month 4 | Medical bill, month 18 (on minimums) |
| Months to debt-free | 32 | 30 |
| Estimated total interest | about $4,083 | about $3,230 |
So in this example the avalanche saves roughly $850 in interest and finishes two months sooner, while the snowball clears a whole debt in month 4 and the personal loan in month 13. That's the real trade-off, in your own numbers instead of a general rule. If the gap is small, pick the order you'll stick with. If it's large, the avalanche is probably worth the slower first win. To double-check a result, put the same debts into the free debt payoff calculator; small differences come from rounding and the payoff-month simplification above.
Step 5: Use it every month
- Track actual payments. Add a "Done" checkbox column to the method you picked (Insert > Checkbox) and tick each month as you pay it.
- Update balances when they drift. Your real statements won't match the estimate exactly, because card interest is usually calculated daily and fees or rate changes happen. Every few months, type the real balances into the Debts tab and the schedule recalculates from today.
- Try "what if". Change the monthly budget from $750 to $800 and watch the months-to-debt-free number. Seeing what an extra $50 does is often the most motivating part of the whole sheet.
- Add a lump sum. A tax refund or bonus can go straight to the current target. Reduce that debt's balance on the Debts tab and the schedule shifts.
Common mistakes
- Budget below the minimums. The check cell in Step 1 catches this. If the minimums don't fit, call your lenders or a nonprofit credit counselor before choosing a method.
- Forgetting 0% promotional rates end. If a card's 0% offer expires, the avalanche order may change. Update the APR on that date.
- No cash buffer. Keep a small emergency cushion so a surprise bill doesn't go straight back onto a card you just paid down.
- Mixing up APR and monthly rate. The sheet divides APR by 12. Don't enter a monthly rate in the APR column.
Prefer it ready-made?
If you'd rather skip the formula work, the Debt Snowball & Avalanche Planner ($5, Excel and Google Sheets) is this same setup built out for up to 10 debts: both schedules for up to 30 years, the payoff order, the debt-free date, estimated total interest for each method and a balance chart. It's optional. The steps above will get you the same answer.
Interest here is estimated monthly (balance × APR ÷ 12). This is general information with example numbers, not financial advice.
Try the free debt payoff calculator (snowball vs avalanche) →
Related template: read about the Debt Snowball & Avalanche Planner
See all Cedar & Ledger templates
Frequently asked questions
Which saves more money, the debt snowball or the avalanche?
The avalanche, which targets the highest interest rate first, usually costs less interest overall. How much less depends on your debts. In this guide example it saved about $850 and two months, but when rates are similar the difference can be close to zero.
How do I make a debt snowball spreadsheet in Google Sheets?
List each debt with balance, APR and minimum, rank them by balance, then build a month-by-month schedule where every debt gets its minimum and the extra goes to the smallest open balance. The formulas are in this guide.
Can one spreadsheet compare snowball and avalanche?
Yes. Build the schedule once, duplicate the tab, and change only the payoff order the Target formula uses. A small results box then shows months to debt-free and total interest for both.
Why does my spreadsheet not match my statements exactly?
Spreadsheets usually estimate interest monthly as balance times APR divided by 12, while many cards charge interest daily and add fees. Update your real balances every few months to keep the plan accurate.
What if my budget is less than all my minimum payments?
Then neither method works yet. Contact your lenders about hardship options or talk to a nonprofit credit counselor before picking a payoff order.
Cedar & Ledger · Guides