March 10, 2026 • 7 min read
How to Share Race Results With Participants After a 5K, 10K, or Triathlon
The race is over. The timing chip data is in. Now comes the part nobody talks about when planning an event: how do you actually get results to 300 participants without spending the next three hours at your laptop?
If you’ve organized a 5K, 10K, charity run, triathlon, or any timed event, you know the post-race results problem. Everyone wants their finishing time immediately. The spreadsheet approach exposes every participant’s data to anyone with the link. Individual emails don’t scale. And your timing company’s results portal — if they even provide one — is often clunky, branded wrong, or locked behind a subscription.
There’s a simpler approach: a self-service results lookup page where each participant enters their bib number and sees only their own result. One link, shared once, handles every inquiry.
Why the usual approaches fall short
Post-race results distribution is a solved problem for large events — Boston Marathon has infrastructure for this. For everyone else running a local 5K, corporate sports day, or charity triathlon, the options are underwhelming.
Emailing results individually is what most small event organizers end up doing for their first event. It doesn’t survive contact with 200+ finishers. You spend an hour sending emails, then another hour responding to “I didn’t receive mine” messages.
Posting a Google Sheet or PDF is fast but careless with privacy. Even a sheet with only bib numbers and times lets participants infer each other’s performance. Names, ages, and home towns — common in race results — should never be in a shared file.
Posting to Facebook or a group chat turns your results announcement into a comment thread. Participants tag each other, ask questions publicly, and the actual result data gets buried.
Using your timing company’s portal works if they offer one. Many smaller timing operations export a CSV and hand it to you. You’re on your own from there.
How a results lookup page works for race organizers
A results lookup page is a single shareable URL. Participants open it, enter their bib number — or bib number plus last name for added security — and see their individual result. No one else’s data is visible. No account required.
A results lookup page: the participant enters their bib number and sees their own result immediately.
You set it up once from your timing export. The page handles every lookup, whether you have 50 finishers or 5,000. When the results window closes, you unpublish the page from your dashboard.
FormHug calls this feature Public Query. It takes a spreadsheet import and requires no code.
What you can display per finisher
The results page shows whatever fields you include from your timing export. Typical race result fields:
- Overall place — highlighted at the top in large text, so it’s the first thing participants see
- Chip time / gun time — the core data point
- Age group and age group rank — participants often care about this as much as overall place
- Pace per mile/km
- Division (Open, Masters, etc.)
- Name — optionally masked (showing “J*** Smith” instead of the full name) if your event collects sensitive data alongside results
Fields you don’t include are never exposed. So if your spreadsheet has home address or phone number from registration, those stay private — they simply don’t appear on the results page.
Setting it up from a timing export: four steps
Most timing systems export results as an Excel or CSV file. That’s your starting point.
Step 1: Get your results data
Export from your timing software — RunSignUp, Race Roster, FinishLynx, or a manual stopwatch sheet. You need at minimum: bib number, name, and finish time. Any additional fields (age group, division, pace) can be included optionally.
Save as .xls or .xlsx. FormHug accepts files up to 5 MB and 6,000 rows, which covers the vast majority of local and regional events.
Step 2: Import the spreadsheet
Upload your file in FormHug’s Public Query setup. You’ll see a preview of your data and assign a type to each column — name, number, short text, and so on. Confirm, and your data is ready.
Upload your timing export and assign column types. The data is ready to query immediately after.
Step 3: Set the lookup field
Choose what participants enter to retrieve their result. Bib number alone is the simplest option — every participant knows their bib. For events where you want a small amount of added security, require bib number plus last name. The chance of guessing both correctly is negligible.
Set bib number as the lookup field. Add last name as a second field if your event warrants extra security.
Step 4: Configure the display and share
Choose which fields appear in the result and how. Pin overall place or finish time to the top with large colored text — that’s what participants are most anxious to see. If your data includes full name alongside sensitive fields, enable partial masking.
Highlight the fields that matter most. Overall place at the top, chip time and age group rank below.
Your lookup page gets a unique URL — something like formhug.ai/os/EOGiNy. Post it in your post-race email, your event Facebook page, and your timing company’s confirmation. Anyone with the link can look up their result immediately.
When to use this (and when not to)
This approach is well-suited for:
- Local and regional races — 5Ks, 10Ks, half marathons, triathlons, duathlons with 50–5,000 finishers
- Charity and fundraising runs — where the organizer is a small team or all-volunteer
- Corporate sports days and fun runs — internal events where participant privacy actually matters
- School and university athletics — cross country meets, track days, swim galas
- Multi-sport events — where results across disciplines can be combined in one spreadsheet
It’s not the right tool for events with real-time live tracking requirements, or for large-scale events that need a full results platform with deep search, filtering by category, and historical archives. For those, dedicated race results software is the better investment.
A note on participant privacy
Race results feel public — and for large events, they often are. But for smaller events, especially those where participants may not have consented to fully public results, it’s worth being deliberate.
The lookup-by-bib approach means results aren’t discoverable by name. Someone searching for a specific participant online won’t find their result through your FormHug page. Participants can only access results if they have the link and know their bib number.
If your event collects ages or age ranges, consider whether you want to display exact birth years. Age group categories (30–34, Masters 50+) are safer than exact ages for privacy purposes.
Try it live
See the participant experience for yourself. Open the sample page and enter bib number P001:
To set up results for your own event, start from the FormHug dashboard. The free plan includes 3,000 submissions per month.
Frequently Asked Questions
My timing company gives me a CSV, not Excel. Can I still use this?
Yes — open the CSV in Excel or Google Sheets, then export as .xlsx. FormHug accepts .xls and .xlsx files up to 5 MB and 6,000 rows.
What if participants don’t know their bib number after the race?
Most participants remember their bib or have it photographed. If your event doesn’t use bib numbers, you can set the lookup field to any unique identifier — last name plus finish time, registration email, or a participant ID from your registration system.
Can I publish results before all finishers have finished?
Yes. You can import a partial results file and update the data later by re-importing an updated spreadsheet. The lookup page URL stays the same.
How do I take the results page down after the event?
Unpublish it from the FormHug dashboard. The URL stops working immediately. You can republish at any time if needed.
Is the lookup page free?
FormHug’s free plan includes 3,000 submissions per month, which is enough for most local and regional events. Each participant lookup counts as one submission.
Can I show results for multiple race distances on one page?
The simplest approach is one lookup page per distance, each with its own URL. You can share both links in your post-race communication with a note on which URL applies to which distance.
Related
- How to Share Exam Scores and Competition Results Without Exposing Everyone’s Data — the same approach applied to academic and judged competitions
- How to Build a Lookup Page from an Excel Spreadsheet — start here if your data is already in Excel
- Public Query feature page — full feature overview
- Public Query setup guide — step-by-step documentation