All posts

Free Expense Tracker Template for Google Sheets (And How to Automate It)

A good expense tracker doesn't need to be complicated. It needs to be consistent: the same columns, filled in the same way, every time. The problem isn't the spreadsheet - it's the discipline of actually keeping it updated.

This post gives you a free template to start with, explains how to structure it properly, and then shows you how to stop filling it in by hand entirely.

What a Good Expense Tracker Needs

Before jumping to a template, it's worth being clear about what fields actually matter. A lot of expense trackers try to do too much. Here's what a clean, functional one needs:

Column Why It Matters
Date Essential for period filtering and tax filings
Vendor Who issued the invoice or receipt
Description What was purchased or what the service was
Amount (excl. tax) The net amount before tax
Tax / VAT The tax portion separately - required for VAT returns
Total The amount actually paid
Currency Critical if you deal with international suppliers
Category For budget analysis (e.g. Software, Travel, Supplies)
Invoice / Receipt # For cross-referencing with source documents
Notes Optional context, reimbursement status, etc.

That's ten columns. Clean, comprehensive, and compatible with most accounting workflows.

The Free Template

Download the CSV template and import it into Google Sheets in under a minute:

👉 Download Expense Tracker Template (CSV)

How to import into Google Sheets:

  1. Download the CSV file above
  2. Go to sheets.google.com and create a new spreadsheet
  3. Click File → Import → Upload and select the downloaded file
  4. Choose Replace current sheet and click Import data

You'll have a working expense tracker with sample rows and a totals row ready to go. Delete the sample rows, keep the headers, and start logging.

The template includes:

  • All ten columns from the structure above (Date, Vendor, Description, Net Amount, Tax/VAT, Total, Currency, Category, Invoice #, Notes)
  • A few sample rows to show the expected format
  • A TOTAL row with SUM formulas pre-filled for the numeric columns

It's intentionally simple. No macros, no scripts, no dependencies. You can extend it as needed.

How to Use It Correctly

A few habits that make the difference between a spreadsheet that helps and one that becomes a chore:

Log immediately, not later. The biggest failure mode for expense trackers is batching. "I'll log everything at the end of the month" turns into a painful two-hour session of digging through emails. Log as invoices arrive.

Separate net and tax amounts from day one. Many people just log the total. This creates a problem at tax time when you need to split VAT from net amounts. Keep them in separate columns from the start.

Use a fixed category list. Don't invent new categories on the fly. Decide your categories once (Software, Office, Travel, Marketing, Professional Services, etc.) and stick to them. The summary tab only works if categories are consistent.

Keep the source document. The spreadsheet is a summary. For each row, the underlying invoice or receipt should be accessible - ideally filed in a Google Drive folder linked to the same period.

The Problem With Manual Entry

Even with the best template in the world, the bottleneck is the same: someone has to read every invoice and type the data in.

A supplier sends you a PDF. You open it, find the total, find the VAT, find the date, find their name, type it all in. Three minutes. Multiply that by the number of invoices you receive in a month, and you're looking at a real chunk of time - for something that adds zero value.

The data is already in your inbox. The question is how to get it into the spreadsheet without the manual step in between.

Automating the Template With Mail2Ledger

Mail2Ledger is a Gmail add-on that connects your inbox directly to your Google Sheet. When an invoice arrives - whether as an email body or a PDF attachment - it uses Gemini AI to extract all the relevant fields and adds a new row to your spreadsheet automatically.

The workflow is:

  1. Invoice arrives in Gmail
  2. Open Mail2Ledger in the sidebar
  3. AI extracts vendor, date, amounts, VAT, and description
  4. Review the extracted data (edit anything if needed)
  5. Click sync - the row appears in your sheet instantly

The template columns map directly to what Mail2Ledger extracts. You end up with a live, always-current ledger that you never have to fill in manually.

It's the difference between a spreadsheet you maintain and a spreadsheet that maintains itself.

Getting Started

  1. Make a copy of the template using the link above
  2. Install Mail2Ledger from the Google Workspace Marketplace - it's free during early access
  3. Connect your Google Sheet in the Mail2Ledger settings (takes about 30 seconds)
  4. Open the next invoice that lands in your inbox and try it

The goal isn't to have a perfect system from day one. It's to remove the friction of manual data entry so the system actually gets used.


Questions or feedback? Drop us a line at [email protected].

Follow our journey

We write about building AI productivity tools. No spam, just real updates.

Privacy Policy