Uber gives every driver a downloadable trip history CSV — a spreadsheet with every completed trip, its distance, and its earnings breakdown. Most drivers never use it. That's a mistake: the CSV is the most accurate mileage log you'll ever have, and it contains the income data you need for Schedule C, all in one file.
This guide walks through downloading the file, decoding each column, and importing it into ExpenseBot so you get both a IRS-compliant mileage log and accurate income entries — without manual data entry and without duplicates.
What Is the Uber Trip History CSV?
The Uber trip history CSV is a row-per-trip export of your completed rides. Uber makes it available through the driver web portal (not the mobile app) and typically covers one calendar year per download. The file includes:
- Trip date and time (begin and end)
- Pickup and dropoff city
- Distance driven (pickup to dropoff)
- Earnings (driver net, after Uber's commission)
- Tips and surge pay
- A unique trip ID for every row
This is different from the annual tax summary Uber emails in January. The CSV has trip-level detail — useful for building a mileage log, auditing earnings, and reconciling against your 1099.
For Canadian Uber drivers filing a T2125, see our complete CRA guide for Uber drivers. This article focuses on US Schedule C filers.
How to Download Your Uber Trip History CSV
- Go to drivers.uber.com on a desktop browser (not the mobile app — the CSV export is desktop-only).
- Click your profile photo in the top-right corner and select Tax Information.
- Select the tax year you need from the dropdown. Uber keeps multiple years available — useful for catching up on past returns.
- Click "Download" next to "Trip/Earnings History." The file downloads as a
.csvwith a name liketrips_data_export_2026_01_01_to_2026_12_31.csv. - Save the file somewhere easy to find — you'll upload it to ExpenseBot in the next step. Don't open and re-save it in Excel; that can corrupt date formatting.
UberEats drivers: the process is the same — log into your driver portal and download the Delivery/Earnings History CSV. The column structure is similar; ExpenseBot handles both rideshare and delivery Uber CSVs.
What Each CSV Column Means for Taxes
Not every column in the CSV is tax-relevant. Here's a breakdown of the ones that matter:
| Column | What It Is | Tax Use |
|---|---|---|
| id | Unique trip identifier | Dedup key — prevents double-import |
| begin_trip_time | Trip start timestamp (UTC) | Date for mileage log entry |
| distance | Trip route miles (pickup → dropoff) | Mileage deduction × $0.725/mile |
| earnings | Driver net after Uber commission | Primary income for Schedule C |
| tip | Passenger tip amount | Taxable income — add to earnings |
| surge | Surge multiplier pay | Taxable income — add to earnings |
| city | City where trip occurred | Market context for multi-city drivers |
| status | Trip status (completed/cancelled) | Filter: import completed trips only |
One important caveat on distance: the distance column records only the trip route — from passenger pickup to dropoff. It does not include deadhead miles (driving to the passenger pickup). Deadhead mileage is also deductible at the same IRS rate, but you need a GPS tracker or manual log to capture it separately.
For a full mileage tracking strategy including deadhead capture, see our Mileage Tracker guide.
How to Import the CSV into ExpenseBot
ExpenseBot's CSV importer is designed specifically for Uber's column structure. It creates two types of records from a single upload:
- Income Tab rows — one per trip, with earnings + tips + surge combined as gross income, categorized as Rideshare Income
- Mileage Log entries — one per trip, using the
distancecolumn andbegin_trip_timeas the date
To import:
- Open ExpenseBot and go to the Mileage Log tab (or the Import section)
- Click "Import Uber CSV"
- Drag and drop your downloaded
.csvfile or click to browse - Review the preview — ExpenseBot shows a sample of trips and the calculated mileage deduction
- Click Confirm Import
Import typically completes in under 30 seconds for a full year of trips. For high-volume drivers (3,000+ trips/year), allow up to 2 minutes.
You can also import directly from the Uber CSV Mileage Import page for a step-by-step walkthrough with column verification.
Turning Trip Distance into a Mileage Deduction
After import, ExpenseBot totals all trip miles and applies the 2026 IRS standard mileage rate of 72.5 cents per mile (IRS Notice 2026-10) to calculate your mileage deduction. This deduction goes on Schedule C Line 9 (Car and Truck Expenses).
| Annual Trip Miles | Mileage Deduction (2026) | Est. Tax Savings (25% bracket) |
|---|---|---|
| 10,000 miles | $7,250 | ~$1,812 |
| 20,000 miles | $14,500 | ~$3,625 |
| 35,000 miles | $25,375 | ~$6,344 |
| 50,000 miles | $36,250 | ~$9,063 |
These figures cover only trip miles from the CSV. Adding deadhead miles — which many part-time drivers underestimate at 15–30% of trip miles — can add thousands of dollars to your deduction.
The IRS requires a contemporaneous mileage log: date, business purpose, destination, and miles for each trip. ExpenseBot's import populates all four fields from the CSV automatically, creating an audit-ready log without manual entry.
Reconciling CSV Income with Your 1099-K or 1099-NEC
Uber sends either a 1099-K (if you received $20,000+ in payments in 2026, per the OBBBA-reinstated threshold) or a 1099-NEC for other earnings. The 1099 gross typically does not match your CSV earnings column, and that's expected.
Here's why the numbers differ and how to handle each on Schedule C:
- 1099-K reports gross payments processed through Uber's payment platform — this can include booking fees, tolls passed through, and other items that Uber collects and remits separately. Report this as gross income on Schedule C.
- CSV earnings = your net after Uber's service fee (typically 25%). The difference between the 1099 gross and your CSV earnings is Uber's commission — deductible on Schedule C Line 10 (Commissions and Fees).
- Tips and surge in the CSV are always fully taxable. Confirm they're included in your 1099 or add them separately.
ExpenseBot's income import handles this: it creates rows for earnings + tip + surge, and separately flags the Uber commission gap so you can add a Schedule C Line 10 deduction entry for the difference.
For a complete Schedule C walkthrough for Uber drivers, see Uber Driver Tax Tracker.
Re-importing Mid-Year Without Creating Duplicates
Many drivers import their Uber CSV quarterly, or forget to import and catch up later. ExpenseBot handles this with trip-level deduplication using the id column from the CSV.
Each imported trip is stored with a record ID of mileage_uber_[trip_id]. When you import again — even with a file that overlaps earlier imports — ExpenseBot checks each trip ID against existing records and skips any that already exist.
| Scenario | What Happens |
|---|---|
| First import (full year CSV) | All trips imported as new records |
| Re-import same file | All trips skipped (already imported) |
| Import Q1 CSV, then import full-year CSV | Q1 trips skipped; Q2–Q4 trips added |
| Import last year's CSV + this year's CSV | Both imported; year filtered by date in reports |
This means the safest workflow is to always download the full-year CSV and import it at year-end — even if you've been importing monthly. ExpenseBot will add only the new trips.
