Start freeStart
Free for 6 months

You pedal.
Your trainer holds the watts.

goni.si is a browser app that pairs with your smart trainer over Bluetooth and runs your interval workouts in ERG mode. It picks a workout for you every day, takes you up 32 legendary roads on a pixel map, and keeps your rides in your account, on all your devices.

Winter is Coming Trainer season starts now: goni.si is free for the next 6 months. No trainer? Turn on the simulator in settings.

Start free
  • Smart trainers
  • Chrome and Edge
  • Nothing to install
  • Works offline

The point

Just the workout and your data.

goni.si isn't a game and it isn't a social network. Everything on screen is there to help you ride the workout as it was written, and to show you in the numbers how you're getting stronger.

  • Focused on the workout

    No avatars, races or leaderboards. Big numbers, the target and the time to the next interval. Nothing else.

  • Every second recorded

    Power, cadence, heart rate, speed and target power, every second. Then NP, IF, TSS and an interval-by-interval table: target versus what you actually rode.

  • Your data is yours

    Your rides live in your account, on your laptop and tablet at once. Export a FIT file whenever you like, and delete your data from our server in one click.

Features

Open the page, pair the trainer, ride.

Under a minute from opening the page to your first pedal stroke. You decide how much time you've got; the app takes care of the watts, the transitions and recording the ride.

Intervals in ERG mode

The trainer sets the resistance so you hold the target watts, whatever your cadence or gear. A 3-2-1 beep before every interval change.

A workout picked for today

Choose a goal (power, threshold, endurance or recovery) and a time: 30, 45, 60 or 90 minutes. The pick looks at your last 7 and 28 days. After a hard day it eases off; hit your intervals and next time it's a little harder.

Interval builder

Build 5 × 4 minutes in a few clicks: steady power, ramps, repeats, free ride. Set power as % of FTP or in watts, and the profile draws itself in zone colours as you go.

Numbers you can read from a metre away

Target, 3-second power and time left in the interval are big. Pause, skip a block and nudge intensity by ±1% or ±5%, from the keyboard too.

Pixel road maps

32 roads from Slovenia, Croatia, Italy, the Alps, the Pyrenees and Mallorca. You see yourself as a pixel cyclist on the map, and the trainer sets the real gradient from the elevation profile.

Summary and Strava

NP, IF, TSS, kJ, heart rate and an interval-by-interval table. Your ride goes to Strava or intervals.icu in one click or automatically, and you get a FIT file for Garmin.

In the browser, offline, your data stays with you

Nothing to install: open goni.si in Chrome or Edge. After the first visit it works without internet too. Rides are saved on your device and in your account, so you see them on your other devices too. If the trainer drops out or you reload the page, you pick up from the same second.

From the app

Here's what it looks like.

Screenshots from the app. The screen shows only what you can still read halfway through an interval.

Riding around Lake Bled: a pixel map with the cyclist, with power, speed, gear, distance ridden, gradient and cadence above it.
Road ride Lake Bled, one lap. Pixel map, elevation profile with your position, the gradient your trainer feels, and big numbers down the side. Map © OpenStreetMap contributors (ODbL), elevation EU-DEM (Copernicus).
Today's workout pick: 2 × 7 sweet spot, the interval profile, 30 minutes, 72% of FTP on average.
Today's pickToday's workout, and why it's this one.
The builder: 5 × 4 min VO2max, profile in zone colours, 40 minutes in total.
Builder5 × 4 minutes, with a warm-up and a ramp, in a few clicks.
Ride summary: duration 30:00, NP 119 W, IF 0.60, TSS 18, FIT file download and sending to Strava, intervals.icu and Garmin.
SummaryNP, IF, TSS and sending to Strava.

Ready every day

Got 30 minutes?
Let's ride.

Every day there's a workout waiting for you, fitted to your goal, your time and whatever you rode yesterday. No browsing, no building: open goni.si, hit Do it now and you're already pedalling. Got 45, 60 or 90 minutes instead? The workout adapts.

Do it now · start free No trainer? Turn on the simulator in settings.
Today 30:00

10×30/30 VO2max

Easy yesterday, intervals today: your legs are fresh.

  1. MonFTP2×15
  2. TueEasyZ2 45′
  3. WedVO230/30today
  4. ThuRestSpin
  5. FriTempo4×10
  6. SatClimbVršič
  7. SunLong90′ Z2

32 roads · 6 countries · works offline

From Vršič to the Stelvio, in your living room.

Legendary roads from Slovenia, Croatia, Italy, Austria, France and Spain, drawn as pixel maps. Ride one freely while the trainer simulates the gradient from the elevation profile, or ride any ERG workout with the map showing where you are.

  • Julian Alps · Slovenia

    Vršič

    12.0 km↑ 822 mmax 14.8%

  • Julian Alps · Slovenia

    Mangart Road

    10.9 km↑ 928 mmax 16%

  • Kvarner · Croatia

    Učka — Poklon

    14.8 km↑ 919 mmax 11.8%

  • Makarska Riviera · Croatia

    Biokovo — Sveti Jure

    30.7 km↑ 1735 mmax 18%

  • South Tyrol · Italy

    Passo dello Stelvio

    24.8 km↑ 1852 mmax 15.8%

  • Carnia · Italy

    Monte Zoncolan

    9.6 km↑ 1215 mmax 20.8%

  • High Tauern · Austria

    Großglockner

    26.5 km↑ 1856 mmax 14.8%

  • Isère · France

    Alpe d'Huez

    14.7 km↑ 1107 mmax 13.7%

  • Provence · France

    Mont Ventoux

    21.4 km↑ 1574 mmax 16.4%

  • Mallorca · Spain

    Sa Calobra

    9.4 km↑ 628 mmax 14%

Maps: © OpenStreetMap contributors (ODbL) · elevation EU-DEM (Copernicus) via OpenTopoData · routing OSRM. Maximum gradient measured over 100 m.

What you need

A trainer, a browser, legs.

goni.si talks to your trainer over Web Bluetooth, which Chrome and Edge support. That's all it takes.

  • A smart trainer

    Any smart trainer with Bluetooth FTMS, which is nearly every recent model: Wahoo KICKR and KICKR CORE, Tacx (Garmin), Elite, Saris, Zwift Hub, JetBlack…

  • Chrome or Edge

    On a laptop or desktop (Windows, macOS), or on an Android phone or tablet.

  • Heart rate monitor (optional)

    Pair a Bluetooth chest strap as a second device, even mid-ride.

  • iPhone and iPad: through the Bluefy browser

    Safari and the other iOS browsers have no Web Bluetooth. Use the free Bluefy and open app.goni.si in it.

  • Not in Safari on a Mac or in Firefox

    These browsers don't support Web Bluetooth. The app tells you so up front instead of leaving you guessing.

Coming soon

What's next.

Today you get intervals, daily workout picks, the builder, 32 roads and FIT export. We keep building.

Your AI plans your training Soon

Connect your own AI assistant via MCP. It plans workouts for the days ahead, sends them to goni.si and reads your results after the ride. All you do is ride.

More roads Soon

Even more roads, plus importing your own route from a GPX file.

More intervals and workouts Soon

A bigger workout library, a ramp test for FTP, ZWO import and export, and typing in intervals as quick text.

Weekly overview Soon

What you rode this week and what's coming up, with your training load over the last 7 and 28 days.

FAQ

Short answers.

When can I start?

Right now: open app.goni.si and sign in with your email (we send you a link, there's no password). goni.si is free for the next 6 months.

Do I need to install anything?

No. Open goni.si in Chrome or Edge and click “Connect trainer”. If you like, add it to your desktop or home screen as an app. After the first visit it also works offline.

What is ERG mode?

In ERG mode the trainer adjusts the resistance itself, so you put out exactly the watts the interval calls for. If your cadence drops, the resistance goes up; spin faster and it eases off. You just pedal.

Which trainers work?

Every smart trainer that supports the Bluetooth FTMS standard (Fitness Machine Service). That's nearly all recent models: Wahoo KICKR and KICKR CORE, Tacx Neo and Flux (Garmin), Elite Direto and Suito, Saris H3, Zwift Hub, JetBlack and others. Older models sometimes need a firmware update; trainers without FTMS won't work.

Why doesn't it work on iPhone?

Safari on iPhone and iPad doesn't support Web Bluetooth, which is how the browser talks to your trainer. It works in Chrome on Android, and on a laptop.

Where are my rides stored?

On your device and in your account on our server in the EU, so they are the same on all your devices. You can delete them from the server in Settings at any time. You can export any ride as a FIT file. More in the privacy notice.

How do my rides get to Strava?

Connect Strava (or intervals.icu) once in Settings. After that every ride goes there on its own as soon as you finish, or you send it in one click from the summary. A road ride arrives on Strava as a virtual ride with a map. For Garmin Connect, download the FIT file.

Do I need internet for the road rides?

No. Maps and elevation profiles for every road are built into the app, so Vršič and the Stelvio work offline too.

What will you email me?

A short hello straight away, and after that only when there's something new. Every email has an unsubscribe link. More in the privacy notice.

Winter is Coming

Free for the next 6 months.

Leave your email and we'll write when there's something new. Unsubscribe in one click.

Start now →

Need a smart trainer?

You can buy interactive trainers at A2U, a Slovenian shop, for example. goni.si is not affiliated with A2U and earns nothing from purchases.

Trainers at A2U ↗