How PaceBoss works
PaceBoss turns a SimResults CSV into a navigable race report — and, across multiple imports, into a personal career view and a league standings tool. Everything runs in your browser; nothing leaves your device. Here's the flow end-to-end.
1. Get a CSV
The expected input is a SimResults CSV export — produced by simresults.net when you upload an ACC results file. Most ACC racers already have these from league servers; if you don't, drop into a session, post-process the result through SimResults, and click Export CSV.
Typical exports are well under 1 MB. Race and qualifying sessions are both supported. Multi-session CSVs (qualifying + race + warmup in one file) are parsed cleanly — PaceBoss treats each as a navigable session in the workspace.
2. Import
On /import, drag the CSV onto the dropzone or click Try sample data to load a bundled multi-class GT3+GT4 race used for testing.
The file is parsed entirely in your browser. After parsing, the import is saved to IndexedDB — so you can come back later, click Resume, and pick up exactly where you left off. The library at /sessions lists every import you've kept.
If you've claimed a driver and your name appears in the parsed data, post-import navigation lands on /me instead of the session view.
3. Workspace overview
You land on the workspace dashboard:
- A summary of sessions, entrants, total race laps, and the fastest lap.
- A session list (in the sidebar) showing every session in the import. Click any session to open the results view.
- Sessions you raced in (where your claimed name appears) are flagged with a small accent dot in the sidebar.
4. Results
The results view has three regions:
- Race recap header — the basics: track, session type, date, server, lap count, P1.
- Podium strip — top three with car number, driver, gap. The claimed-
merow gets an accent border +youmicro-badge. - Classification table (or a tap-friendly list on mobile) — the full grid with positions, gaps, best laps, sector ranks, status flags. Sortable. Filterable. Class-toggleable for multi-class races.
Hovering any row pops a preview card with the high-signal stats: best lap, gap, consistency %, three sector thermometers, and a click-to-open link. Click the row itself to drill into the driver.
5. Driver detail
The driver page is the most information-dense view in the app. The hero shows finish position, consistency, and the driver's identity (name, car, team, claimed-me indicator). Below that:
- Pace trend chart — every lap plotted, Y-inverted so faster = higher. Two dashed reference lines: personal best, theoretical best. The shaded area between the personal-best line and your trace is lost time. Hover any lap for a tooltip with the exact time + delta-to-best. See theoretical best lap explained.
- Best-lap chip — your fastest lap and a sub-block showing the theoretical-best delta.
- Sectors chip — three vertical thermometers showing your gap to the cohort best in each sector. See pace bands explained for the colour palette.
- Cohort toggle — switches between class-relative (default in multi-class races) and overall-relative comparisons. All deltas re-anchor instantly.
- Compare module (deeper analysis) — pick another driver (winner, fastest-lap holder, the car ahead) and see best-lap and sector-by-sector deltas.
- Laps table (deeper analysis) — every lap, every sector, sorted, with delta-to-best. Pit laps and invalid laps are flagged.
6. /me — your career
The /me view aggregates every session you've raced across all imports, gated on a claim:
- Hero with career totals (Races, Podiums, Wins) and the date range across imports.
- Best-lap-by-track chip grid — each tile shows your fastest at that track, a sparkline of session history (Y-normalised so 100% = the field-fastest at that track), and a pace-band tint that encodes how close you are to the field benchmark.
- Sessions you raced — a flat list, most-recent first, click-through to the originating session.
The chip tints and sparkline shapes give you a glance-readable triage: green chips with rising sparklines = strong tracks; red chips with flat-low sparklines = highest-leverage tracks to attack. See improve at a specific track.
7. /leagues — championships
The /leagues view turns saved CSV imports into season standings. Workflow:
- Create a championship (name, optional season, optional class filter, points scheme, drop-worst-rounds).
- Attach saved imports as rounds (each round = one CSV).
- The standings table computes immediately — pos, driver, total points, per-round breakdown, wins, podiums.
The standings table renders the claimed-me row with a primary border-left accent so it's easy to scan to. P1 gets a crown icon. Drop-rounds are line-through with a · drop annotation. See run a championship.
8. Export a screenshot
Every results view, driver page, and championship-standings tile has a Share report button. The viewport widens, scroll regions expand, and the captured region renders to a PNG you can drop into Discord, a club post, or a championship recap. The export filename includes the track + session + date; the captured image has a small paceboss · … watermark inside the captured region.
If a number ever surprises you, check the glossary for how it's calculated. For deeper treatments of specific concepts, see the learn guides.
questions
- What file does PaceBoss need?
- A SimResults CSV export. Go to simresults.net, upload your ACC result file, and click Export CSV. That file is what PaceBoss reads.
- Does PaceBoss work offline?
- After the first load, yes. Imports are saved to IndexedDB so you can return to a session without re-importing the CSV.
- Does PaceBoss send my race data anywhere?
- No. The CSV is parsed entirely in your browser and stored in IndexedDB on your device. Nothing is uploaded to any server.
- Does PaceBoss support multi-class races?
- Yes. GT3 and GT4 in the same CSV are handled cleanly. Sector comparisons default to class-relative so a GT4 driver is compared against GT4, not the full field.