Race Result Scoring and RunSignup Integration

There are many timers in the US that use Race Result for scoring and RunSignup for Registration. RunSignup will release an integration in January, 2024 to support timers who use both systems.  We are seeking feedback and initial beta testers in late December, and will improve the integration based on feedback.

RunSignup has invested in developing an integration to allow for automated bi-directional syncing of participant information:

  • Easy upload of participants from RunSignup to Race Result
  • Full participant information, including questions and membership data values along with the RunSignup Registration ID is uploaded to Race Result.
  • Team Name and Team BIB values are synced for Relay and Aggregate Scoring to Club and License fields of RR (based on discussion with RR power timers).
  • Bi-directional syncing of additions and changes on both sides.  Make any change or add a participant in Race Result, and we update this information in RunSignup.  Make any change or add a participant in RunSignup, and we update this in Race Result.
  • RunSignup Registration and Checkin App bib assignment on race day is fully supported by this approach.  Information is updated in near real time.

James Harris, our RaceDay CTO, did this design and development directly.  We leveraged our RaceJoy infrastructure and integration capabilities to take advantage of our reliable and scalable cloud service as well as a number of existing capabilities that allow for similar functions between RunSignup and RaceJoy.  This helps assure Race Result timers of a reliable service.


1. In RunSignup there will be a dashboard setup page that you enter the Race Result Event ID in.  There is no need to align RSU events to RR contests… just choose which RSU events you want to sync… and the interface automatically creates the RR contests for the timer on the RR event (what RSU calls a race).

<<Screen sheet to go here when ready>>

2. In Race Result, you need to give access to RunSignup to push data up to Race Result.  This is done on a page in Race Result and timers will need to enter a specific URL – the same URL (a Racejoy URL) will be used for all races.

2.a. You will specify a Webhook in Race Result with type and parameters.  This allows RunSignup to pick up any changes on the Race Result side.

Initial Sync:

Once those setup steps are complete on both sides, the participants and all specific fields like questions and membership information (like USAT Membership Number) in RunSignup will be sent to Race Result and those fields will be created.  We add the Registration ID field from RunSignup so we can keep track of things.

Continuous Syncing

The systems are continuously synced since RunSignup and RaceResult are both cloud based systems and the RaceJoy integration servers are also cloud based.  This obviously saves time and avoids confusion.  It also allows for capabilities like dynamic bib assignment and leaving race registration open even after the race has started,

Other Notes

1. Race Result requires a Bib Number.  Furthermore, the Bib Number is the unique ID field.  This limits some things like the same bib can not be used for a runner who wants to do both the 5K and 10K.

2. We think the best way for a RunSignup reg customer to do things is setting the bib numbers in RunSignup.  There is a lot more flexibility in RunSignup and it works perfectly with the Checkin App.  But even if bibs are assigned in RaceResult, this integration will work and the RR assigned bibs will get updated when RSU bib numbers are assigned (as long as there are not duplicates for the RR side).

3. RunSignup gets a Webhook when there is a change in Race Result.  Even event transfer.  We pick that up and do that on the RunSignup side.  If event Transfer, we then update the Reg ID in Race Result.

4. Team Name and Team BIB values are synced for Relay and Aggregate Scoring to Club and License fields of RR (based on discussion with RR power timers).


Can you explain how timers are using the Team Bib field?
RSU supports both a BIB assignment to the individual of a Team (different numbers in RR land) and also a separate TEAM BIB field assigned to the overall Group / Team.  In this RSU to RR integration you will see the group / team BIB assignment (if used) come into the License Field for the Club.  We have been told by other RR timers that they use the Club field in their templates for the Team Name and to put this team bib in the license field.  They probably will not need it unless scoring Team Relay events with a common BIB use case.  Of course the individuals all have a BIB number also… but if a timer has RELAY participants actually use the same CHIP and the leg participant passes it off as to the next leg (baton style).. then you will need the common TEAM BIB value/field for scoring in that use case.

In Setup notes #2, you mention entering a specific URL for Runsignup, but I think you mean they need to enter a Race Result customer number, right?
The Setup page at RSU asks for the Race Result event id and which contests to sync.

On the RR side.. we just need the timer to give access to a special RunSignupInc user we have established working with the RR development staff.

IF.. key word (IF) you want changes to flow back from RR to RSU.. you will need to setup the webhook part of RR and put in the well known URL back to RSU we are providing in the dashboard page instructions (same for all setups) for this web hook.

It looks like this solution works with online race result events. If a timer is working offline using the Race Result local web server, is the integration still possible?
The data syncs to the RR database.. The local web server will get the data as you start the local web server.  Of course changes will not sync back until you “check” the event back in to RR.  But this is a very good question… will we get the webhook change alerts from RR when the event is checked back in. This is the type of nuance it will be useful to have beta testers feedback.

Is there any confirmation to the user when a sync occurs successfully (or unsuccessfully)? Or logging to a log file somewhere?
Yes… you will see on our dashboard page the last sync timestamp and if any issues.  And you can also select a Button to “Resync” (i.e. to completely reset and resync all data from RSU to RR).

Different races call the same field, different things, like: Tri Club, Athletic Club, Or Division (Clydesdale, Athena, Etc).  We’d prefer to put all of these into the same field as we chose and have created in our RaceResult race templates.  Will we be able to match up RunSignUp questions to additional fields or will they automatically be created?
If the later, we need to change a bit how we are dealing with the fields in RR12, not impossible to overcome, but will require an extra field (so we have 2) for each question so we can deal with races on and off of RSU the same…

For version 1 we are automatically creating the additional fields based on what RSU has and then RR timer has full control to change the “label” on the RR side to whatever they want.  As long as the name matches our name the integration will put data in that field.

For version1 we are not supporting the timer making things first at RR and then controlling the mapping in the RSU setup / dashboard page for RaceResult integration.  We are all about incremental iteration in our technology development and this has been discussed in planning after we get Version 1 established.


RunSignup has always had a commitment to the Timing Community. We have always believed in an Open Platform, and it is why all of the scoring software packages have done an integration with our Open API. We have a number of timing partners who have expressed frustration in the lack of a good integration between Race Result and RunSignup. We hope this integration meets the needs of timers who use both systems. Let us know your feedback and we will continue to try to support and improve this integration for many years to come.

Subscribe to Our Blog

Customize Lists...