Table of Contents
Excel remains India's most-used invoicing software, and honestly — for a business issuing a handful of GST invoices a month, a well-built sheet is perfectly workable. The operative word is well-built. A GST invoice has 14 mandatory fields and three different tax columns depending on geography; most homemade Excel invoices miss at least one.
Here's how to build the sheet properly, formula by formula — and an honest note on where Excel breaks down.
The layout
Structure your invoice sheet in five blocks, top to bottom:
Block 1 — Header (rows 1–5): Business name (large), address, phone, email, GSTIN, and "TAX INVOICE" clearly displayed. Merge cells for a clean look; add your logo with Insert → Picture.
Block 2 — Invoice meta (rows 6–8): Invoice No | Invoice Date | Due Date on one side; Place of Supply (state + code) and Reverse Charge (Yes/No) on the other. Place of supply drives your tax logic below.
Block 3 — Client details (rows 9–12): "Bill To" — name, address, client GSTIN, state and state code.
Block 4 — Line items (rows 13–20ish):
| # | Description | SAC/HSN | Qty | Rate | Taxable Value |
|---|
Taxable Value formula: =Qty*Rate (i.e., =D14*E14).
Block 5 — Tax and totals: This is where the GST logic lives:
Subtotal (taxable value): =SUM(F14:F20)
CGST @9%: =IF(place_of_supply=home_state, subtotal*9%, 0)
SGST @9%: =IF(place_of_supply=home_state, subtotal*9%, 0)
IGST @18%: =IF(place_of_supply<>home_state, subtotal*18%, 0)
TOTAL: =subtotal+CGST+SGST+IGST
Rounded total: =ROUND(total,0)
Use a dropdown (Data → Data Validation → List) for Place of Supply with all state names, and let the IF formulas switch CGST+SGST vs IGST automatically. Hard-coding the split is exactly how inter-state invoices go out with the wrong tax — the single most common Excel GST error.
Below totals: amount in words (no clean native formula — either install a SpellNumber macro or type it manually and double-check), bank/UPI details, terms, signature space.
Compliance details Excel won't enforce for you
The sheet does math; it doesn't do law. You must manually ensure:
- Serial numbering — unique, consecutive, max 16 characters, one series per FY. Keep a separate register sheet listing every invoice number issued; duplicated numbers across "Copy of Invoice(3).xlsx" files are an audit classic. (Numbering systems)
- SAC/HSN codes on every line — 4 or 6 digits depending on turnover. Wedding-industry SAC codes are compiled here.
- Correct rate per line — services are mostly 18%, but not all; mixed-rate invoices need per-line tax columns rather than one bottom-block rate.
- 30-day issue window for services, triplicate/duplicate copy rules, and 72-month retention.
- PDF before sending. Never email the .xlsx — it's editable and shows your formulas and other clients if you reused tabs.
Where Excel starts costing more than it saves
Be honest about the crossover point:
- Volume. Past ~10–15 invoices a month, manual numbering, filing and PDF-exporting eats hours.
- Payment tracking. Excel shows what you billed, not who's paid. Receivables tracked "in your head" leak real money — the late payment problem usually starts as a tracking problem.
- Advances and balances. Event businesses bill advance → instalments → settlement per booking. Excel across three tabs and six months is where amounts get lost.
- Mobile. Editing an invoice sheet on a phone at a venue is misery.
- GSTR-1 filing. Your CA re-types Excel invoices into the return; software exports them.
The comparison in depth: Excel vs invoicing software.
The zero-effort alternative
If you're building this sheet from scratch today, consider skipping the build: BrightDesk's GST invoice generator already implements everything above — GSTIN fields, SAC codes, automatic CGST/SGST-vs-IGST switching, serial numbering, amount in words, branded PDF — free, from any device. And when invoicing is part of a bigger workflow (bookings, advances, payment history, reminders), BrightDesk replaces the whole spreadsheet stack, not just the invoice tab.
Excel got Indian small business surprisingly far. It's just no longer the easiest free option.
