Expense management sounds simple in theory. An employee spends money on behalf of the company, submits a receipt, and someone approves it. In practice, the process usually looks like this: an employee emails a photo of a receipt to their manager, the manager forgets to respond, the employee follows up on Slack two days later, the manager verbally approves it, nobody records it anywhere, and at the end of the month the finance person spends half a day reconstructing what happened from scattered email threads and bank statements.
This is not a technology problem. It is a workflow problem. And you do not need expensive procurement software to fix it. A Google Sheet with some thoughtful automation can handle expense approvals for teams of up to 20 people without any monthly subscription fees.
In this guide, we will build a complete expense approval system in Google Sheets using Apps Script. By the end, you will have a sheet where employees submit expenses, managers approve or reject them with one click from their email, and monthly summary reports generate automatically.
A well-built expense approval system in Google Sheets does not feel like a spreadsheet. It feels like dedicated software — except it costs a fraction of the price and your team already knows how to use it. Here is what the experience looks like for everyone involved.
Submitting an expense takes 30 seconds. The employee fills in a simple form — date, amount, category, a short description, and a link to the receipt. The moment they submit, they get a confirmation email. No wondering whether it went through. No need to follow up. The system handles it from here.
When their expense is approved or rejected, they get another notification with the outcome. Full visibility, zero chasing.
Managers never have to open the spreadsheet. When an expense is submitted, they receive an email with all the details — who submitted it, how much, what category, and a link to the receipt. Two buttons: Approve or Reject. One click, and the system records the decision, updates the sheet, and notifies the employee. The whole interaction takes under ten seconds.
If a manager forgets to act on an expense, the system sends a reminder automatically. Expenses never sit in limbo because the automation enforces follow-through.
Finance gets the best part: automated reports. At the end of each month, a summary report lands in their inbox — total expenses by category, by employee, by department. Approval rates, average processing time, month-over-month comparisons. No more spending half a day pulling together numbers that should have been automated from the start.
The system also sends real-time alerts when individual expenses exceed a threshold or when department spending approaches its budget limit. Problems surface early, before they become surprises.
Under the hood, the system uses several layers of automation working together:
Building all of this requires careful Apps Script development — handling triggers, email formatting, concurrent editing, security, and edge cases. It is not a weekend project for most teams, which is why many businesses choose to have it built for them.
If you are considering building this yourself, be aware of the technical hurdles that trip up most people:
This setup works extremely well for teams of up to 15 or 20 people processing a few dozen expenses per month. You should consider dedicated expense management software (like Expensify, Brex, or Ramp) when your team exceeds 30 people, when you need corporate card integration, when you need OCR-based receipt scanning at scale, or when regulatory compliance requires more granular audit trails than Sheets provides.
But for the vast majority of small businesses, an automated Google Sheet is the perfect middle ground — powerful enough to enforce a real workflow, simple enough that everyone on the team already knows how to use it, and affordable enough that it costs nothing beyond the initial setup time.
If you want this system but do not want to build it yourself, this is exactly what we do at Refitted. We build custom automated Google Sheets systems for finance teams — expense approval workflows, budget trackers, cashflow forecasts, and more. You tell us how your approval process works, and we build a sheet with all the automation baked in. Your team gets a system that works from day one without learning a single line of code.
We build custom websites, web apps, and automated Google Sheets systems. Tell us what you need and we'll handle the rest.
Get Started