Where your money comes from and goes, month by month
Every income and cost line already tracked elsewhere (trip revenue, employee payroll, parking, car wash fees, insurance, loan payments, maintenance, credit card spend) rolled up into one row per month. Green = you made money that month, red = you spent more than came in.
Trips & revenue by month
Investor payouts by month
Per-car detail for selected month
π€ Cars with $0 revenue this year
No completed or booked revenue recorded so far this year β likely sold, delisted, or never actually active. Review and remove any that no longer belong in your fleet; removed cars stay removed (they won't come back on their own, even from a future CSV upload).
π·οΈ Tag & registration expirations
Temp tags and registration/plate tags expiring within 30 days, or already expired. Set or update dates in the Fleet table below.
β Odometer readings that look like typos
These trips have a check-in/check-out odometer gap that's negative or implausibly large (usually a mistyped digit in Turo, like an extra "3" in the middle of a number). They're excluded from mileage totals and "current mileage" below so one bad entry doesn't throw off the whole car β but the underlying trip in Turo is still worth correcting at the source.
π€ Same investor, different spelling
Reports already merge these automatically (case/spacing/Turkish-character differences don't split them anymore), but the cars below still store the spelling that doesn't match the others β fix it here to clean up the underlying data too.
Fleet & owners (from your master sheet + Turo CSV)
Cars that couldn't be auto-matched to your master sheet are flagged below. Click any Investor, Car, Plate, or VIN cell to edit it directly. Set Temp tag / Registration tag expiration dates to get expiration alerts.
Maintenance cost by investor β this month & lifetime
Parts cost is money out; NextGen billed is money in (only counted where a job was actually billed to the customer). Your own cars show up here too, under your own name β that's real money out either way.
Cars & current mileage
Service log
Reminders
Each service item can have its own interval β e.g. oil every 5,000 mi, cabin air filter every 10,000 mi. Each is tracked from the last time that specific item was logged above.
NextGen Auto β outside customer jobs
For cars that aren't part of your fleet β walk-in customers who bring their own car in for work. Log what you did and what NextGen made on it, separate from the fleet's own maintenance log above.
Upload Turo trip earnings CSV
Each month, export your trip earnings CSV from Turo and drop it here. Trips are matched by Reservation ID, so re-uploading (e.g. an updated cumulative export) safely updates existing trips instead of duplicating them. A trip's payout is counted in the month its trip end date falls in. Cars are matched across reports by VIN first (plates are just a fallback when VIN is missing), so a plate change or a car listed under a second company's Turo account still lands on the same car.
Upload history
Data & syncing between devices
Everything here is saved only in this browser, on this device β it doesn't automatically appear on your other devices. To move it to another computer or your iPad: export a backup here, send it to the other device (AirDrop, email, iCloud Drive, Files app β however you'd normally move a file), then open this same page there and use "Import backup." Whichever side you import on replaces its data with the backup, so treat one device as the "primary" you upload CSVs into, and periodically export β send β import to keep the other caught up.
Pay period
Bi-monthly: the 1stβ15th and the 16thβend of each month. Each company's trip count is pulled automatically from whichever CSVs you've uploaded tagged to that company (pick the company on the Upload CSV tab each time) β everyone's hours you still enter by hand below. If you haven't uploaded a real report for a company yet, you can type in a manual trip-count override in the table below instead.
Hours worked this period
Trip count & cost split by company
Performance
Estimated wash cost per trip is computed automatically from your Employee Costs data: total employee payroll cost in this range Γ· total completed trips in this range. Backfill past pay periods in the Employee Costs tab to make this more accurate.
My cars
Cars where you're the sole owner β the money is already 100% yours, this just shows which ones actually earn it. Excluded from the investor rankings above since there's no split to compare.
Investor cars
Sorted by your (host) share β the cars bringing you the most, regardless of investor.
By investor
"Your net" = your host share minus what it actually costs you to service that investor's cars (parking, net of anything you recover from them, plus their share of estimated employee/wash cost by trip count). Edit parking fee/recovered amounts in the Accounting tab.
Accounting β Profit & Loss
Parking and insurance below are monthly recurring settings per car β the P&L applies them to every active car for whichever month you're viewing. NextGen Auto is your own repair shop: parts cost is always a real expense, and if you billed a job (car isn't yours), the margin counts as income.
Income
Expenses
Per-car expense settings
Parking fee & recovered amount apply to every car. Insurance & loan/finance payment only apply to your own cars.
Credit card statements
Easiest way: export a CSV of transactions from your bank/card's website and upload it below β date/description/amount columns are auto-detected. ParkMyShare charges auto-sort into "Parking", AutoZone/O'Reilly/NAPA-type charges into "Parts & Maintenance" β both auto-confirm since they're known, routine vendors, regardless of amount. Everything else over the $ threshold below (an unrecognized merchant, or a possible car purchase) still needs a quick manual confirm. Card payment/autopay lines are skipped automatically β those aren't real expenses.
No CSV handy? Paste lines instead β date, description, amount (comma or tab separated):
Daily vs. Unlimited parking β which plan per car?
Estimated from each car's actual trip start/end dates: a day is counted as "on trip" if the car was out on a rental that day, otherwise it's counted as needing a paid parking day. This is an estimate from Turo trip dates, not the parking lot's own gate log β a car that changes lots or gets picked up same-day it's dropped off can throw the estimate off a bit, so treat it as directional, not exact.
Last month
Lifetime (all months with data)
Actual ParkMyShare spend (from credit card)
Pulled from confirmed "Parking" category transactions on the Accounting tab's credit card list β this is what's actually been charged, useful for checking the model above against reality while cars are on the Daily plan.
Monthly payout statements
Generates a clean, printable statement for an investor covering trips completed by their car(s) that month β trip count, mileage, and their payout. Use "Print / Save as PDF" to send it to them.
Revenue split rules (Owner % vs. Host/You %)
Pre-filled from Turo's host/owner revenue split screen. Rows marked assumed weren't visible in your screenshot β double check those against your actual Turo settings and adjust if needed. Owner % + Host % should add to 100%.
Investor portal
Publish a separate, standalone page investors can check on their own β each investor picks their name and enters their password, then sees only their own car(s): trip count, mileage, and their payout (never your host share or anyone else's numbers). This is a snapshot, not live β click "Download investor portal page" whenever you want to push updated numbers, then upload that file to your Netlify site (same way you upload the main app). It's a simple password gate for convenience, not real security β good enough to keep casual browsing out, not a determined snoop.
Announcements (shown to every investor)
Investor passwords
Set a password for each investor who should get portal access. Leave blank to keep them locked out.
Cloud sync (real-time, across all your devices)
This connects the app to your own free Firebase database, so anything you do on one device β upload a CSV, fix a car, log maintenance β shows up automatically on every other device signed into the same workspace. No exporting/importing files. This uses your own free Firebase project, not a server we run, so your data stays under your control.
- Go to console.firebase.google.com and sign in with any Google account.
- Click Add project, give it any name (e.g. "turo-fleet"), and finish the wizard (you can skip Google Analytics).
- In the left sidebar, go to Build β Firestore Database β Create database β choose any region β start in test mode.
- Go to Build β Authentication β Get started β enable the Anonymous sign-in provider.
- Click the βοΈ gear icon (Project settings) β scroll to "Your apps" β click the </> (web) icon β register an app (any nickname) β it'll show you a code block with values like
apiKey,projectId, etc. Copy those into the boxes below.
β οΈ Treat the workspace code like a password β anyone who has it (plus your Firebase config) can read and write this data. Don't post it publicly.