Every rider. Every second. Live.

PositionTracker turns your run or cycling race into a TV broadcast: the fastest, most accurate and most beautiful you can imagine. Spectators open a link, the organizer sees everything, and a runner installs nothing but one free app.

Finish!

Live standings0:00
    View
    Speed
    Sport
    Try it on the selected rider

    The demo runs in your browser (made-up riders and course) but shows the same as the real application. The organizer view sees everything instantly, including alarms and battery level. The spectator view is delayed by 15 s, has no alarms and hides the names of those who did not agree. Select a rider and try "Stops".

    What PositionTracker is

    PositionTracker is a web service for tracking the position of participants in running and cycling races in real time on a map. The organizer creates an event, uploads the course as a GPX file and invites participants by email. Participants send their position from the phone with the OwnTracks app (Android, iPhone). Spectators follow the standings, gaps and the expected finish time through a public link, without an account and without installing anything.

    Sports
    Running and cycling; a loop with several laps or a single lap
    Organizer
    A web browser; sign-in by a one-time link sent by email, no password
    Participant
    The free OwnTracks app for Android and iPhone
    Spectator
    A public link in the browser; positions delayed by 5 to 300 seconds as set by the organizer
    Languages
    Slovak and English (interface and emails)
    Data protection
    Positions are deleted 30 days after the event ends; spectators see a name only with consent

    Four roles. One experience that cannot be beaten.

    1

    Cyclist

    Your family finally knows exactly where you are and does not have to ask at the finish "are you there yet?". You just pedal.

    • A phone in the jersey pocket, no extra gadget.
    • Friends follow you on the map and see when you arrive.
    • Your number and nickname appear in the public standings, if you want.
    2

    Runner

    Pace per kilometre, the gap to the runner ahead and an ETA to the minute. Just like at the big championships, only on your loop.

    • Pace in min/km instead of km/h, automatically by sport.
    • Below 20 % battery the organizer is warned before the phone dies.
    • After the finish broadcasting stops by itself and the data is gone within 30 days.
    3

    Organizer

    A control room like in Formula 1: map, standings, coloured sectors and alarms for stopped riders, riders who left the course, lost signal and low battery. Nobody is left in the forest unnoticed.

    • Email invitations in Slovak and English, reminders with one click.
    • GPX course, laps, checkpoints, categories and start waves.
    • A public link for spectators with an adjustable delay.
    4

    Spectator

    No installation, no account. You open the link, find your favourite and watch them approach the finish.

    • A star next to a name and the map does the rest.
    • An alert on the page when your rider crosses the finish line.
    • Share a rider with one tap.

    No mock-ups. This is the real application.

    Every picture below is a screenshot of the running application with sample riders and a sample course.

    Race control: map, standings and messages
    Race controlA map with all riders, standings with coloured sectors, messages about stopped riders, riders off the course, lost signal and low battery.
    Spectator page on a phone
    Spectator on a phoneThe biggest figure is the ETA to the finish. Below it distance, speed and sectors.
    Spectator page in dark mode
    Dark and light modeThe page follows the device setting. The toggle is always at hand.
    Participants list with statuses
    Participants and invitationsWho confirmed and who did not. Resend, remind and re-issue the link with one click.
    Event setup
    An event in minutesUpload a GPX, set laps, checkpoints, categories and the spectator delay.
    Phone setup with a QR code
    Phone setup in a minuteOne tap or a QR code configures the OwnTracks app. No typing of addresses.

    Guides so clear that even your grandmother can follow them.

    Pick who you are. Every procedure has exactly the steps you will see in the app.

    1. Create an account

      Enter your name and email. There is no password: you sign in with a one-time link sent by email. Open the link and press "Confirm email". Only then can you upload a course and invite participants (abuse protection).

    2. Prepare the course as a GPX file

      You need to know nothing about GPS. The free tool gpx.studio is enough: it runs in the browser, needs no account, and you draw the course by clicking on the map. If you already have the route in Strava, Komoot, Garmin Connect or on Mapy.com, just download it from there as GPX and skip this step.

      1. Open gpx.studio/app. Use the magnifier on the right to find the place of the race and zoom in until you can see individual streets. From too far away the tool cannot draw a route ("start point is too far from the nearest road").
      2. On the left choose the tool Plan or edit a route (the pencil icon). Keep Routing switched on in the panel and pick the sport under Activity (bike or run): the route then snaps to roads that suit the sport.
      3. Click the map in the order the race will go. Every click adds a point and the tool joins it to the previous one along the road. You can drag a point elsewhere if you do not like the route.
      4. For a loop press Back to start at the end: the last point is joined to the start. If the route runs the wrong way round, use Reverse.
      5. Check the length at the bottom left (with several laps it is the length of one lap).
      6. At the top choose File → Export… (or Ctrl+S) and in the Export options window press Download file. A file ending in .gpx is downloaded.
      The finished route in gpx.studio
      Example: a loop through ŽilinaFive clicks on the map and "Back to start". Bottom left you see the length of the route (5.67 km) and the elevation profile. The circles are the points you clicked.
      The export window in gpx.studio
      ExportFile → Export… opens a window, press "Download file" in it. Leave the "OpenStreetMap data" checkbox empty.

      Want to try the procedure? Download the sample GPX file made exactly from this example (a loop through Žilina, 5.67 km, 162 points) and upload it in the application when you create an event.

      What the application requires of the file: at least 50 m per lap, up to 1 MB, and for several laps a loop whose end is at most 100 m from the start. That is why you use "Back to start" for a loop. You do not mark a start line: the start is the first point of the course.

    3. Create the event and upload the course

      Name, place, start date and time, sport. Then a GPX file, the number of laps (1 to 10), checkpoints and the spectator delay (5 to 300 seconds). A course with several laps must be closed.

      Tip: a delay of 15 to 30 seconds keeps the broadcast smooth and still fair to the riders.

      Event setup
    4. Invite participants

      Name, email, gender, email language, category, wave. The bib is assigned automatically, or you enter it. The invitation goes out immediately. The list shows Invited, Confirmed, Declined and Email failed, and you can send a reminder, resend, or issue a new link.

      Spectators see a participant's name only with consent. For minors only the bib is shown publicly.

      Participants list with statuses
    5. Ready, then live

      Press "Mark as ready" and on race day "Go live". The app shows the public link for spectators: post it and put it on posters as a QR code. Once live, the course can no longer be changed.

    6. Run the race

      The "Race control" tab shows the map, standings, sectors and messages. Press "Acknowledge" to handle an alarm, find the rider on the map, and mark a rider who has withdrawn as DNF. Unhandled messages stay on top, handled ones are dimmed.

      Race control: map, standings and messages
    7. After the finish

      Press "Finish event". Positions are deleted after 30 days by themselves. If a participant asks, you delete their data immediately (only the bib remains). You issue the official results: read the spectator standings as indicative.

    Behind the beauty stand hard numbers.

    0

    apps for spectators. A link in the browser is enough.

    1

    free app for the participant: OwnTracks, in the background, even with a locked screen.

    30 d

    and positions delete themselves. Spectators see a name only with consent, and never a minor's.

    5–300 s

    spectator delay is yours to set; the organizer sees everything instantly.

    Born over a beer. That is why it works.

    This tool was not born in a meeting. It started over a beer, when my colleague Qto explained how he struggles to tell an AI what exactly it should do. Qto is a passionate cyclist and a man who knows his way around vibration and signal measurement. He can spot one bad bearing in a chart at a glance.

    My take: an AI is not a calibrated sensor, it is a capable new colleague. Tell it “just do something” and you get something. Tell it what you want, what it will run on and how you will check it, and you get PositionTracker: live race tracking from registration to the finish line.

    I am Martin Horný, a senior .NET developer from Košice, Slovakia. If you are sceptical about AI, you are right not to trust it blindly. You have to steer it and check its work. I would be glad to show you how to bring it into your team’s work.

    Want to try it in your company or club? Get in touch: LinkedIn · GitHub · CV · E-mail

    Questions you would ask later.

    Do I need my own GPS tracker?

    No. A phone in a jersey pocket, backpack or armband is enough. The free OwnTracks app sends the position in the background.

    What if the signal drops?

    The app queues positions and sends them when the connection returns. The organizer and spectators see an "offline" notice meanwhile. Behaviour in long outages is still being verified in the field.

    Can spectators see my exact position?

    No. Spectators see the position with a delay and only during the race. Only the organizer sees you exactly.

    Does it work for running and cycling?

    Yes. For running the app shows pace in min/km, for cycling km/h, and it adjusts the position sampling too.

    What does it cost and where does it run?

    PositionTracker is an open project you can run on your own server (Docker, PostgreSQL). The deployment guide is in the repository.

    I do not know how to create a GPX file. What now?

    Draw the course by clicking on the map in the free tool gpx.studio and export it (File → Export…). The exact steps are in the organizer guide, first step.

    Are the standings official?

    No. Spectator standings are indicative because positions are delayed. The organizer issues the official results.

    Your next race deserves a broadcast.

    Run the demo once more, switch to the spectator view and imagine it is your event. Then create your own.