This generator builds an expense report template for Excel on a single sheet: a category dropdown on every expense line, a subtotal per category, a mileage table priced from your own rate, and a report total at the top. It is for the person who got back from a three-day client trip with a hotel folio, two train tickets, a stack of meal receipts and 120 miles on their own car, and has to hand finance something signed by the end of the month.
How to make an expense report in Excel with this generator
- Fill in the employee name, department, reporting period (it starts as the current month), approving manager and currency. Every field is optional.
- Type your mileage rate and choose per mile or per km, or leave it blank if you didn't drive.
- Check the categories. There are ten to start with: Airfare, Lodging, Meals, Ground transport, Car rental, Fuel, Parking and tolls, Office supplies, Client entertainment and Other. Rename, remove or add to them.
- Click Download expense report (.xlsx). The file is named after the employee and month, so Jane Doe's September report arrives as expense-report-jane-doe-2026-09 (xlsx.com).xlsx.
- Open it in Excel. Type each expense's date, description and amount, and pick its category from the dropdown. Trips and distances go in the mileage table.
The page fills in the header and the category list. You type the expenses themselves into the file, in Excel. The page builds the workbook in your browser, with no sign-up and no limit on how many you make.
What's in the Excel expense report template
One sheet, named Expense report, laid out like this:
| Part of the sheet | What it holds |
|---|
| Top left | Employee, department, period and approver |
| Top right | The mileage rate and the report total |
| Expense table | 20 lines of Date, Description, Category and Amount, with a dropdown in every Category cell |
| Mileage table | 10 lines of Date, Trip (from, to, purpose), Miles or Km, and Amount, with the total distance and amount under them |
| Summary by category | Below the mileage table: one row per category with its subtotal, then Not categorised, Mileage and Report total |
| Foot | Employee signature and date; Approved by, date (with the approver's name if you gave one) |
The Category cells only accept typed entries from the list. Type "Meal" into one and Excel refuses it with a message. The dropdown reads its options straight from the category names in Summary by category, so renaming Lodging to Hotel there renames it in the dropdown too.
For printing, the whole report fits on one portrait page, so the signature lines print with the figures. The file comes with the print area set and gridlines hidden. Amounts round to the smallest unit of the currency you picked, out of 14 on offer.
Why category subtotals don't add up to the report total
A SUMIF only counts a line whose category matches its criteria letter for letter, spaces included (case doesn't matter). Each subtotal in this report is one:
=SUMIF($C$9:$C$28,C46,$D$9:$D$28)
// $C$9:$C$28 the Category cells of the 20 expense lines
// C46 this row's category name in the summary, e.g. Airfare
// $D$9:$D$28 the Amount cells to add up
In a homemade report with typed categories, "Meals " with a trailing space, "Hotels" where the category is Lodging, or a blank category all do the same thing: the line counts toward the expenses total and drops out of every subtotal. Nothing errors. The breakdown quietly adds up to less than the report, and finance spots it before you do.
This template closes the gap in two places. The dropdown stops misspellings at the cell. The Not categorised line catches the blank case: it takes the expenses total minus all the category subtotals (rounded to the cent) and turns red when the result isn't zero.
Take a filled-in report: Airfare $412.40, Lodging $318.00, Meals $86.25, and a $34.10 taxi with no category picked. Airfare, Lodging and Meals show their amounts. Not categorised shows $34.10 in red. Add 120 miles at $0.70 and the report total comes to $934.75, which is right, but the red line tells you the taxi still needs Ground transport before the report goes in.
The same red line catches a rename after the fact. Change Meals to Food in Summary by category and the lines already filled in still say Meals, because Excel doesn't rewrite a cell when its dropdown's options change. Their amounts move to Not categorised until you pick Food on each one.
How mileage is calculated when the 2026 rate changes mid-year
Each mileage line multiplies its distance by the rate cell at the top of the sheet (G3) and rounds the result to the cent:
=IF(OR(C32="",$G$3=""),"",ROUND(C32*$G$3,2))
// C32 miles (or km) on this trip
// $G$3 the mileage rate
// OR(...) leaves the amount blank until both are filled
// ROUND(,2) stores the amount in whole cents
The page doesn't supply a rate, so check what your employer pays. Many use the IRS business rate, which changed mid-year in 2026: 72.5 cents a mile for trips from January 1 to June 30, and 76 cents from July 1.
The half cent matters. In a cell formatted to two decimals, 0.725 displays as 0.73, and an approver who checks 100 miles against the rate on the page expects $73.00 where the sheet says $72.50. The rate cell here shows fractions of a cent, so 0.725 reads as 0.725.
There is also one rate cell, and changing it recalculates every trip on the sheet. A report from June 22 to July 10 can't price the June trips at 72.5 cents and the July trips at 76. Make one report per rate period, or replace each June line's formula with one that names the June rate, such as =ROUND(C32*0.725,2).
The mileage table totals the distance and the amount, and the amount carries into Summary by category as its own Mileage line.
Adding lines, trips and categories in Excel
The tables start with 20 expense lines and 10 mileage lines, and the totals, the SUMIF ranges and the dropdown all grow when you insert a row between two existing lines. A row typed under a table's last line sits outside the totals and the SUMIFs, and never counts.
- More expense lines. Insert a row anywhere between two expense lines. The new row gets the category dropdown, and the expenses total and every SUMIF stretch to include it.
- More trips. Insert a row between two mileage lines and copy the Amount formula down from the line above.
- A new category. Insert a row inside the Summary by category list, type the name, and copy the SUMIF down from the row above. The name joins the dropdown with its own subtotal. The dropdown's error message says the same thing when someone types a category that isn't there yet.
In the form, you can have up to 25 categories. The form rejects duplicate names, and a period that ends before it starts.
Making an expense report from Excel's own templates
Excel 365 has expense report templates under File > New: search for expense report. Use one when your company expects a particular layout, or you want a weekly grid with a column per day.
Check two things before trusting one. Click into a category total and see whether it's a SUMIF over a column you can type anything into; if it is, a misspelled category disappears from the breakdown without a warning. Then look for where the mileage rate lives and how many decimals it shows.
Building your own means a category list, Data > Data Validation with Allow set to List on the Category column, a SUMIF per category, a check row for the leftovers, the mileage formula and a print area. That's an hour of setup before the first receipt goes in.
Limits
- 20 expense lines and 10 trips. Insert rows inside the tables for more, as above.
- One currency per report. There is no foreign-currency conversion. Convert a euro receipt at the rate your card statement shows, and note the original amount in the Description.
- No receipts, cash advance, amount-due line or per diem. Attach receipt copies the way your finance team asks. For an advance, add a row under the report total in Excel that subtracts it.
- No official mileage rate. The rate is whatever you type.
- Nothing is saved between visits. Keep last month's file and reuse it, or fill the form again.
- Document properties. The file's author and company are set to xlsx.com. Change them under File > Info on Windows or File > Properties on a Mac if you send the .xlsx itself.
If you bill clients directly for your costs rather than claiming them from an employer, the Invoice Template Generator makes the invoice. A card statement exported as CSV opens with CSV to Excel; convert slash dates with Data > Text to Columns, then paste the Date and Amount columns separately so the Category dropdowns between them survive.
Questions
How do I make an expense report in Excel?
Fill in the name, department, period, approver, currency and mileage rate above, click Download expense report (.xlsx), and type your expenses into the file in Excel. Each line takes a date, a description, a category from the dropdown and an amount, and the subtotals and report total work themselves out. Print it, sign it and hand it to your approver.
How do I sum expenses by category in Excel?
Use SUMIF with the category column as the range, the category name as the criteria and the amount column as the sum range, for example =SUMIF($C$9:$C$28,C46,$D$9:$D$28). SUMIF matches letter for letter, spaces included, so a category typed as Meals with a trailing space is left out. A dropdown on the category column stops that from happening, which is how the downloaded report is set up.
Why doesn't my expense breakdown add up to the total?
At least one line has an amount but a category that none of the SUMIF formulas match: blank, misspelled, or renamed after the line was filled in. In this template the difference shows on the Not categorised line, which turns red when it isn't zero. Pick a category for the missing line and the red clears.
What mileage rate should I put on a 2026 expense report?
Whatever your employer reimburses, which is often the IRS business rate: 72.5 cents a mile for trips from January 1 to June 30, 2026, and 76 cents from July 1. The template has one rate cell per report, so a report that runs across July 1 should be split in two. The generator does not fill in any official rate for you.
How do I add more lines to an Excel expense report?
Insert rows between two existing lines inside the table, not below it. In this template the new row gets the category dropdown, and the expenses total and every SUMIF stretch to cover it. A row added under the last line is outside all of them and doesn't count.
Can one expense report cover two people?
Not cleanly. The sheet has one Employee field and one employee signature line, so an approver signing it vouches for one person's costs. Make one report per person.