How to budget by paycheck in Google Sheets
By Omar, who has written down every expense since 2019 · Updated 24 October 2026
To budget by paycheck in Google Sheets, make each budget month run from one payday to the day before the next, instead of from the 1st to the 31st. Keep a short list of the dates your salary arrived, and let one VLOOKUP tag every expense with the pay month it belongs to. Then SUMIFS totals each pay month by category.
It takes about ten minutes to set up. The steps are below, with the exact formulas and a worked example.
Why don't calendar months work if you're paid on the 24th?
Because a calendar month mixes two salaries. If you're paid on the 24th, "October" from the 1st to the 31st holds the last week of September's salary and the first week of October's. The rent you pay on the 1st and the groceries you buy on the 30th come out of different paychecks, yet the sheet adds them up as one month.
The result is a total that never matches what you actually had to live on. A payday month fixes that: the money that came in and the money that went out cover the same days.
Step 1: Make a Paydays tab
Add a tab called Paydays. In column A, write the date each salary arrived, oldest first. In column B, name the pay month:
=TEXT(A2 + 15, "mmmm yyyy")
That names each period after the month it mostly covers: paid on 24 September, it's your October; paid on 5 October, it's still October. Fill it down. Write the real date the money landed, not the date on your contract: in this example, the 24 October salary arrived on Friday the 23rd because the 24th is a Saturday.
| A: Payday | B: Pay month |
|---|---|
| 24 Aug 2026 | September 2026 |
| 24 Sep 2026 | October 2026 |
| 23 Oct 2026 | November 2026 |
Step 2: Tag every expense with its pay month
In your expense log (date in A, amount in B, category in C, a paid checkbox in D, as in the expense-tracking guide), add a Pay month column in E:
=VLOOKUP(A2, Paydays!A$2:B, 2, TRUE)
With TRUE at the end, VLOOKUP finds the latest payday on or before the expense date, which is exactly the pay period it belongs to. The Paydays list has to stay sorted from oldest to newest for this to work.
| Date | Amount | Category | Pay month | Calendar month |
|---|---|---|---|---|
| 26 Sep | 820 | Electricity | October 2026 | September |
| 1 Oct | 2,400 | Rent | October 2026 | October |
| 14 Oct | 640 | Grocery | October 2026 | October |
| 23 Oct | 310 | Grocery | November 2026 | October |
The first and last rows are the point. A calendar sheet would count the 26 September bill in September and the 23 October shop in October. By paycheck, the bill belongs to the October salary and the shop to the November one. Sample numbers.
Step 3: Total each pay month by category
On a summary tab, put pay months down column A and categories across row 1, then:
=SUMIFS(Log!$B:$B, Log!$E:$E, $A2, Log!$C:$C, B$1, Log!$D:$D, TRUE)
Each cell is what you paid for one category out of one paycheck. Add a total column with =SUM(B2:F2) and compare it with what you were paid.
How do I know mid-month if I'm overspending?
Compare what you've spent so far with what you usually spend by the same day, not with your whole month. On day 10, a month that is a third gone should be about a third spent.
- Day of the pay month:
=TODAY() - [this period's payday] + 1 - Usual by now: your average monthly spend × day ÷ days in the period. With a usual month of 3,900 on day 21 of 30, that's about 2,730.
- Compare: if you've spent 2,940 by day 21, you're about 8% above your usual pace, with nine days left to adjust.
That one number is why I moved from a notebook to a sheet. Paper told me what I'd spent at the end of the month. The pace check tells me where I stand while there's still time to change something.
Which month should each pay period be named after?
The month it mostly covers, which is what the formula above does: the salary paid on 24 September is what you live on through October, so it's your October. Pick one rule and keep it; mixing them makes year-on-year comparisons wrong.
Questions
What if my payday moves because of a weekend?
Write down the date the money actually arrived. The lookup uses your real paydays, so a salary paid on Friday the 23rd instead of Saturday the 24th starts the new month on the 23rd.
Does this work if I'm paid every two weeks?
The formula does: list every payday and each two-week period becomes its own budget period. Name the periods by their start date instead of by month, because some months contain three paychecks. (Pen & Sheet itself is built around one salary a month.)
Which month should a pay period be named after?
Name it after the month it mostly covers. If you're paid on the 24th, the period from 24 September to 23 October is your October, because that is the salary you live on through October.
Can I do this on my phone?
Yes. The Google Sheets app runs VLOOKUP and SUMIFS, so you can log a purchase on your phone and the pay month fills itself in.
Next: How to track expenses in Google Sheets, for setting up the log itself.