For race directors

Bib assignments

Per-sub-event bib plans. Define your pool, reserve VIP bibs, pick a rule, hit Run sweep. Designed to be familiar to anyone who's used RunSignup, with a few improvements where we could do better.

Open the page

From your event's director dashboard, click Bib assignments in the sidebar. You'll see every sub-event listed. Click Configure on any sub-event to expand its plan.

Anatomy of a plan

Each sub-event has its own plan. A plan has four parts:

Bib numbers are unique across your whole event. The same number can't go to two runners, even if they're in different distances — so give each distance its own range (e.g. 5K 1–499, 10K 500–999) to avoid them competing for the same numbers. If you try to assign a number that's already taken anywhere in the event, Run This blocks it and tells you who has it.

Bib ranges
The pool of bibs available for this sub-event. You can add as many ranges as you want — Primary (1–500), Overflow (1000–1100), etc. Lower-priority ranges fill first. Total span is shown automatically.
Reserved bibs
Bibs the auto-assign sweep MUST skip. Use for elite athletes, sponsor commitments (e.g. HOKA gets #1), or to skip unlucky numbers. Single bib? Set start = end. Range? Use both fields. Each reservation has a label so you remember why.
Assignment rule
How the sweep picks bibs. Ten options ranging from simple Sequential (oldest registration → lowest bib) to Stratified by heat (group by heat, sequential within) and By predicted finish (fastest first).
Duplicates policy
Controls how the sweep flags repeats it finds while ordering. Note that bib numbers are unique across your whole event regardless of this setting — saving a number that's already in use is always blocked. The one exception is a relay team that shares a bib (see Relay teams below).

The assignment rules

Pick the rule that matches how you want bibs to flow:

  • Manual entry only — Nothing auto-assigns. You type each bib by hand. Useful when bibs come from an outside system (e.g. timer company hands you a list).
  • Sequential — First registrant gets the lowest available bib, next gets the next one, etc. Most common for road races.
  • Random within range — Shuffle the pool first, then assign. Useful for non-numeric ordering or unpredictability.
  • Alphabetical — Sort by last name (then first name), then assign sequentially. Helpful for packet pickup.
  • By registration date — Earliest registrants get the lowest bibs. Same idea as Sequential but explicitly tied to signup time.
  • By age (youngest first / oldest first) — Sort by age. Useful when bib numbers signal age groups.
  • By gender, then alphabetical — Group by gender, then alphabetize within. Old-school cross-country convention.
  • By heat — Group by heat (using the order on the Heats card), sequential within. Track-meet friendly.
  • By predicted finish time — Uses a registration question called something like “Predicted finish” or “Goal time”. Fastest first. Useful when bib order signals start-line position.

Running the auto-assign sweep

  1. Save your plan first

    Configure ranges, reserved bibs, and rule. Click Save plan.
  2. Click 'Run auto-assign sweep'

    In the Roster panel below the plan. The button is disabled when the rule is Manual or your pool is empty.
  3. Read the result toast

    We tell you how many got bibs, how many were skipped because they already had one, and how many are unassigned (pool ran out).
  4. Pool ran out? Add a range and re-run

    The sweep skips anyone who already has a bib, so re-running after adding range is safe — only the unassigned ones get new bibs.

The sweep is idempotent

Re-running the sweep doesn't shuffle existing assignments. Anyone with a bib already keeps it. Only bib-less registrants get new bibs. This matches the RunSignup “skip existing” pattern.

Reserved bibs

Run This treats reserved bibs as a first-class concept. You don't have to pre-assign athletes by hand and hope the sweep skips around them — you carve out a range, give it a label (“Elite”, “Sponsor — HOKA”, “Skip 13”), and the sweep ignores those numbers forever.

Single bib? Set Start and End to the same number. Range? Use both. Each reservation can optionally point at a specific registration (assigned later through manual edit on the roster).

CSV import + export

Right above the roster:

  • Export CSV downloads the roster with timer-friendly columns: Registration ID, First name, Last name, Email, Bib. Hand this to your timer (Webscorer, Hy-Tek, RaceJoy all read this format directly).
  • Import CSV accepts the same shape back — or any CSV where the columns include Registration ID and Bib (in any order; column header case-insensitive). Matched rows have their bibs updated.

Assign at registration time

Toggle Assign at registration time on if you want each new registrant to get a bib automatically as they complete checkout (using the rule you picked). Off means registrations land bib-less and you run the sweep manually on your schedule.

Most directors want this OFF until close to race day because it's tidy to assign bibs once the registration list is settled. Turning it on shines for races where bib order at the start line matters (predicted-finish-based corral assignments).

Relay teams sharing one bib

Turn Relay teams share one bib on (on a team sub-event) when your relay teams hand off a single chip. With it on:

  • Every member of a team wears the same number. Assign it once — to the team or to any one member — and it lands on the whole team automatically.
  • A teammate who registers later inherits the team's number. If "assign at registration" is on, a brand-new team pulls one number from the pool when it's created.
  • The auto-assign sweep gives one number per team (free agents still get their own), and at check-in, teammates showing the same number is expected — no conflict warning.
  • The shared number is still unique against the rest of the event — only same-team members may share it. A different team or an individual still can't take it.

Leave it off if your relay legs each get their own bib — then every member is numbered individually.

Timer integration

Timing software can pull your roster and bibs directly through the Timer API — including pushing bib assignments back — once you assign a timer company to your event. CSV import/export works too if your timer prefers files.