Course maps
Course maps show the race route on the map within the app. Officials can see the course layout, their own position, and the positions of other tracked officials.
Upload a course map
- Get a KML file of the course. The easiest starting points: download the example file and edit it, or draw the routes in Google Earth and export them as KML.
- Put the route for each discipline in a layer named swim, bike, or run.
- On the web, open the race editor (the pencil on the race) and go to the Course map tab. A new race has this tab once you've clicked Create race.
- Click Upload course map and pick the file. RaceRanger checks it straight away and tells you if something is wrong with it. Then it processes the course in the background — this usually takes under a minute, and you can keep editing other tabs.
- When it's done, the tab shows the course, and you get a Course Map Ready notification. The course map is then available to all officials in the race.
To change the course later, upload a new file with Replace course map.
Note
The file needs at least one recognised layer — swim, bike, or run. A duathlon without a swim, or a course with only some of its legs, is fine. A file with none of them is refused with "KML has no recognized course layers. Expected folders or placemarks named swim, bike, or run."
The event needs a location before you can upload a course map — see Event setup.
You can upload a course map whether or not tracking is enabled for the race. The map overlay works on its own; tracking simply adds live athlete and official positions on top of it.
What officials see
On the map view, officials see:
- The course route overlay, colour-coded by discipline — swim purple, bike yellow, run red.
- Their own position (if location tracking is enabled for their role).
- Other tracked officials' positions.
- Penalty and incident locations (as markers on the map).
Full details
Everything below is optional reading — open a section if your file needs adjusting or the upload doesn't work.
Layer names and file rules
The file must be a KML file (.kml) of up to 10 MB.
Each layer can be either a Folder or a Document element with a name matching the discipline. The names are case-insensitive, only need to contain the word (so "Swim course" or "Bike lap 1" count), and also accept common aliases:
| Discipline | Accepted names |
|---|---|
| Swim | swim, swimming |
| Bike | bike, cycling, cycle, ride |
| Run | run, running |
Each layer should contain one or more Placemarks with LineString geometry defining the route. A layer can contain multiple Placemarks — for example, a bike course with a separate approach segment and a lap segment.
If the KML doesn't have named Folder or Document containers, the system falls back to checking individual Placemark names.
Each discipline is rendered in its own colour on the map: swim purple, bike yellow, run red.
Example KML — Folder containers
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<Folder>
<name>swim</name>
<Placemark>
<name>Lap 1</name>
<LineString>
<coordinates>12.843744,50.235681,0 12.846632,50.235487,0 ...</coordinates>
</LineString>
</Placemark>
</Folder>
<Folder>
<name>bike</name>
<Placemark>
<name>Bike Lap 1</name>
<LineString>
<coordinates>12.874051,50.230864,0 12.874410,50.230683,0 ...</coordinates>
</LineString>
</Placemark>
</Folder>
<Folder>
<name>run</name>
<Placemark>
<name>Run Lap 1</name>
<LineString>
<coordinates>12.881821,50.221378,0 12.882693,50.221971,0 ...</coordinates>
</LineString>
</Placemark>
</Folder>
</Document>
</kml>
Example KML — Document containers (Google Earth exports)
The same structure works with Document elements instead of
Folder. This is common when exporting from Google Earth:
<kml xmlns="http://www.opengis.net/kml/2.2">
<Folder>
<name>Event Name</name>
<Document>
<name>Swim</name>
<Placemark>
<name>Lap 1</name>
<LineString>
<coordinates>...</coordinates>
</LineString>
</Placemark>
</Document>
<Document>
<name>Bike</name>
<Placemark>
<name>Approach</name>
<LineString>
<coordinates>...</coordinates>
</LineString>
</Placemark>
<Placemark>
<name>Lap 1</name>
<LineString>
<coordinates>...</coordinates>
</LineString>
</Placemark>
</Document>
<Document>
<name>Run</name>
<Placemark>
<name>Run Lap 1</name>
<LineString>
<coordinates>...</coordinates>
</LineString>
</Placemark>
</Document>
</Folder>
</kml>
Troubleshooting
When an upload is refused, RaceRanger tells you why — for example:
- "The KML file is empty."
- "The KML file is too large (over 10 MB)."
- "KML has no recognized course layers…" — rename your folders or placemarks to swim, bike, or run.
If processing fails after the check, the Course map tab says "The last course map upload failed. Try uploading the KML again." and you get a Course Map Failed notification with the reason.
If the course map doesn't appear:
- Open the race's Course map tab: once processing is done, it shows the course.
- Check that the layers are named swim, bike, or run, in a Folder or Document container or on the Placemarks.
- Make sure the event has a location. Without one, the tab says "No location on the event yet — set one on the event before uploading a course map."
- Check that the official's device has an internet connection for map tile loading.