LearnExcel.io
Menu

The Month-End Close Checklist in Excel

Written by ·

Every accountant who has closed the books in Excel knows the failure mode: it’s day 4, the balance sheet is off by $1,217.43, and nobody remembers which of the six open workbooks has the right cash number. The fix isn’t working harder — it’s working in the same order every month, with the same checks, in workbooks built to be checked. This is the close checklist I’ve refined over years of monthly closes, organized in the sequence the work actually has to happen.

Print it, adapt it, and run it the same way every month. Consistency is the entire point.

Before You Touch a Number: Workbook Setup

A close that starts in a messy workbook ends in a messy reconciliation. Spend the first 20 minutes of day 1 on hygiene.

1. Create this month’s close workbook from last month’s — by copy, never by overwrite. Save a new file named with a sortable date convention: Close_2026-05_v01.xlsx. Year-month-first names sort correctly in any folder; MayClose_final_FINAL2.xlsx does not. Increment the version number (v02, v03) at every meaningful milestone — after the bank rec ties, after JEs post, after review. When something breaks on day 4, you can roll back to the last known-good version instead of untangling it live.

2. Kill stale external links immediately. Workbooks copied month over month accumulate links to prior-period files, and those links silently pull old numbers. Run through finding and breaking external links before any new data comes in, not after the tie-out fails.

3. Refresh your data dumps into dedicated input tabs. Trial balance, bank activity, AR/AP aging, payroll register — each export gets its own tab, prefixed IN_ (e.g., IN_TB, IN_Bank). Paste exports as values, never formulas, and never type into an input tab. The rule: input tabs are read-only after import. Every calculation lives on separate work tabs that reference the inputs.

4. Convert each dump to a Table (Ctrl+T) and name it. Tables auto-expand when next month’s export has more rows, which means your SUMIFS and lookups don’t silently truncate. Named ranges for key single cells — CloseDate, PriorTB_Total — make formulas auditable at a glance.

5. Freeze your header rows on any tab longer than a screen. It sounds trivial until you’re reconciling row 1,400 of bank activity and can’t see which column is which. Freezing panes takes five seconds.

The Reconciliation Sequence

Order matters. Cash first, because everything downstream assumes cash is right. Then the balance sheet accounts that feed the P&L.

6. Bank reconciliation

Match the bank export against the GL cash activity. The workhorse here is matching on amount and date with XLOOKUP:

=XLOOKUP(B2, GL_Cash[Amount], GL_Cash[Ref], "UNMATCHED")

Anything returning UNMATCHED goes on the outstanding items list. For one-to-many situations (one deposit, several GL entries), aggregate with SUMIFS by date and counterparty before matching. Before you start, check for duplicate transactions in the bank export — duplicated rows in a CSV download are a classic source of phantom differences.

The reconciliation isn’t done when the difference is small. It’s done when:

=Bank_Ending - GL_Ending - SUM(Outstanding[Amount]) = 0

A rec that’s “only off by $40” is a rec that’s wrong.

7. Balance sheet account recs

For each material balance sheet account — AR, AP, prepaids, accruals, fixed assets, payroll liabilities — tie the subledger to the GL control account. The fastest structural check is comparing the two datasets with a lookup: every subledger line should find its GL counterpart and vice versa. Run the comparison both directions; one-directional checks miss items that exist only on the other side.

Build each rec to the same template:

LineSource
GL balance per trial balanceIN_TB
Subledger / supporting detail totalIN_ tab
Reconciling items (listed individually, with explanation)Manual
Unexplained differenceFormula — must be 0

That last row is a formula, never a typed zero. Wrap lookups in IFERROR only where a miss is genuinely expected — wrapping everything in IFERROR is how errors hide until the auditors find them.

8. Roll-forwards

Prepaids, fixed assets, and accruals get a roll-forward: beginning balance + additions − amortization/payments = ending balance, and the ending balance must equal the GL. Beginning balance should be a cell reference to last month’s close file’s ending balance — pasted as a value with the source noted in a cell comment, so this month’s file stands alone.

Summarize and Tie Out

9. Pivot the trial balance

Once recs are clean and adjusting JEs are posted, re-export the TB and build your summaries. A pivot table off the TB with account category in rows and current/prior month in columns gets you a comparative balance sheet and P&L in about two minutes — and unlike a hand-built summary, it can’t drop an account.

Two non-negotiable pivot checks:

  • Grand total of the TB pivot = 0. Debits equal credits or you’ve imported a partial export.
  • Pivot P&L net income = balance sheet current-year earnings movement. If these disagree, an entry hit the wrong side of the ledger.

10. Variance analysis

Compare actuals against both prior month and budget. Build a variance tab with columns: Account, Actual, Budget, $ Var, % Var. Flag anything exceeding your threshold — a common rule is the greater of 5% and a fixed dollar floor:

=IF(AND(ABS(D2)>5000, ABS(E2)>0.05), "REVIEW", "")

Apply conditional formatting to the flag column so review items are visible from across the room. Then — and this is the part that separates a close from a data dump — write one sentence of explanation next to every flagged line. “Rent up $8K — annual escalation per lease, effective May 1.” If you can’t write the sentence, the variance isn’t explained, and unexplained variances are how misstatements survive to year-end.

11. The three-way tie-out

Before anything goes to management, verify that three things agree to the penny: the GL system, your close workbook, and the reporting package. Build a TIEOUT tab with one row per statement total and a difference column that must show all zeros. Hardcode nothing on this tab — every figure is a cell reference. This tab is the last thing you check and the first thing a reviewer should open.

Lock It Down and Document It

12. Version control the final file

Save the reviewed file as Close_2026-05_FINAL.xlsx and stop editing it — any post-close adjustment becomes next month’s problem or a properly labeled FINAL_revised with a change note. If the workbook circulates, protect the formula cells while leaving input cells open, so a reviewer can’t fat-finger a SUMIFS while scrolling. On files saved to OneDrive or SharePoint, the Show Changes feature (Review tab, Microsoft 365) gives you a record of who touched what during review.

13. Documentation that survives you

Every close workbook needs a README tab, written for the version of you that gets hit by a bus (or just goes on vacation):

  • Source of each IN_ tab (system, report name, run date, who ran it)
  • Order of operations — which tabs feed which
  • Open items carried to next month, with owner and expected resolution date
  • Sign-offs: preparer, reviewer, dates

This takes ten minutes and turns a personal spreadsheet into an institutional process.

The One-Page Checklist

#StepDone when
1New versioned workbook from prior monthFile saved as Close_YYYY-MM_v01
2External links brokenEdit Links shows none
3Data dumps into IN_ tabs as valuesAll sources dated
4Tables and named ranges setFormulas reference Tables
5Bank recProof formula = 0
6Balance sheet recsAll “unexplained difference” rows = 0
7Roll-forwards tie to GLEnding = TB
8TB pivot summariesPivot grand total = 0; NI ties to BS
9Variances flagged and explainedOne sentence per flag
10Three-way tie-outAll differences = 0
11FINAL saved, formulas protectedFile locked
12README updated, sign-offs recordedReviewer initials in file

The first month you run this takes longer than your current close. The third month is faster, and by the sixth, the close stops producing surprises — which is the only metric that matters.

FAQ

How long should a month-end close in Excel take?

For a small-to-mid-size entity with clean inputs, 3 to 5 business days is a reasonable target. If you’re consistently past day 7, the bottleneck is almost always upstream — late data dumps or recs that start from scratch each month — not Excel itself. The template-and-roll approach in steps 1–4 typically cuts a day off by itself.

Should I reconcile in Excel or in my accounting system?

Use the accounting system’s built-in bank rec module if it works for your bank feed — it handles matching state better than a spreadsheet. Excel earns its place for accounts the system doesn’t reconcile natively (accruals, prepaids, intercompany) and for the analytical layer: pivots, variances, and tie-outs across sources.

What’s the single most common cause of a close workbook breaking month over month?

Ranges that don’t expand. A SUMIFS pointed at A2:A500 works until the month the export has 540 rows, and the miss is silent. Converting every input to an Excel Table (Ctrl+T) and referencing Table columns eliminates the entire failure class.

Hardcoded values keep sneaking into my formulas. How do I find them?

Select the work tab, press Ctrl+G, choose Special, then Constants with only Numbers checked. Excel highlights every typed number. On a calculation tab, each one should either become a formula or move to a clearly labeled input cell.

Do I really need versioned saves if the file is on OneDrive or SharePoint with version history?

Platform version history is a safety net, not a process. Explicit v01/v02 saves at defined milestones tell you which version was the good one — “the file as of the moment the bank rec tied” — without spelunking through 40 autosave timestamps. Use both.

Related guides

How To

How to Create a Checklist in Excel

Learn how to easily create a checklist in Excel using simple formulas and formatting techniques. Streamline your workflow and increase productivity today.

May 21, 2023

View all Excel Data Analysis guides →