Ask two people to name the world’s best cycling city and you’ll get the same short list — Amsterdam, Copenhagen, Utrecht. Ask why, or ask where your city sits, and the conversation gets vague fast.

Cycling-friendliness has been measured many times by many excellent programmes. But those scores are usually periodic, proprietary, or limited to a hand-surveyed list of cities. If your city isn’t on the list, you’re out of luck — and even if it is, the number often arrives once every few years with no way to see the working.

We wanted something different: a live, transparent, 0–100 cycling score you can compute for any city, entirely from open data, with the methodology published so anyone can check it. That’s the Party Onbici City Cycling Index.

This post explains exactly how it works — the six things we measure, why we weight a protected track differently from a painted line, and why we publish two numbers instead of one. Then, because we’re not the first people to do this, we show how it reads against the established frameworks it takes inspiration from: ITDP, the Bicycle Network Analysis (BNA), Bike Score, the Dutch CROW manual, and Can-BICS.

🇦🇺 Want to see it in action first? Here’s a live scorecard for Sydney — the same page a city officer would see, including every sub-score, the benchmark lenses and the confidence badge described below.

📖 Built entirely on open data

The whole index rests on two open, global, auditable datasets:

  • OpenStreetMap — every mapped cycleway, on-road lane, shared path, plus bike parking, repair stations and drinking-water points.
  • WorldPop — gridded population, so we can ask how many residents a network actually serves, not just how many kilometres exist.

Nothing sits behind a login, and nothing is our proprietary secret sauce. That’s deliberate. Because the inputs are open, anyone who disagrees with a score can improve the map and watch the number move — the index recomputes automatically every day. A benchmark you can’t audit is just an opinion with a decimal point.

🛡️ Not every bike lane is equal

Here’s the single most important design decision, and the one that most separates our index from a naïve “kilometres of bike infrastructure” count.

A painted door-zone line beside 60 km/h traffic is not the same facility as a physically separated, kerb-protected track. Decades of research on the “interested but concerned” majority — the people who want to ride but won’t mix with fast traffic — say the difference is the whole ballgame. Counting both as simply “bike infrastructure” flatters cities that painted lines and penalises none that built protection.

So we classify every segment first, then weight it by quality:

Facility classExampleWeight
ProtectedKerb-separated cycleway, segregated track×1.0
SharedDesignated shared path / greenway×0.8
PaintedOn-road painted lane×0.5
UnknownUnclassified legacy data×0.5 (conservative)

A city earns credit for the quality of its network, not just its length. Ten kilometres of protected track counts for far more than ten kilometres of paint — exactly as it should.

📊 The six things we measure

Every score decomposes into six sub-scores, each mapped onto a 0–100 scale against a “world-class” target. Each one also points at a concrete lever a city can pull.

#Sub-scoreWhat it measures“World-class” target
1CoverageQuality-weighted cycleway-km per km² of built-up area2.0 km/km²
2ConnectivityDensity of network gaps (severed cycleway ends) — fewer is better2.5 gaps/km²
3AccessShare of residents within 800 m of any cycle infrastructure95%
4RidershipRide-km per 1,000 residents (trailing 90 days)500
5SafetyIncidents per 100k ride-km — fewer is better≤20
6AmenitiesParking / repair / water facilities per km² of built-up area1.5 /km²

Two design notes worth calling out:

  • We normalise by built-up area, not per person. An early version rewarded low population, so a sleepy shire could out-score Sydney on “infrastructure per capita.” Density rewards compact, well-connected networks — which is what actually gets people riding.
  • Missing data is greyed, never guessed. A brand-new city with no ride telemetry simply scores on the four infrastructure dimensions; it isn’t punished for data we don’t have.

⚖️ Two numbers, not one

This is the part we’re most careful about. Most scorecards show a single composite. We show two, side by side:

1. The Infrastructure Index — built from open data only (Coverage, Connectivity, Access, Amenities). This is the benchmarkable number. Critically, nothing in it moves when Party Onbici gains users. There’s no way for us to nudge a city’s score by selling more of our own product, so there’s no conflict of interest to disclose. This is the number our leaderboard ranks by.

2. The full composite — adds our activation layer (Ridership and Safety, drawn from Party Onbici app telemetry).

We are deliberately upfront about that second layer. App-derived ride data is a non-representative sample — cycling apps skew young, male and fitness-oriented (the well-documented “Strava bias”). So we frame Ridership and Safety as our pilot’s activation evidence, never as neutral measurement of a whole city. On most scorecards, that layer is greyed out.

Why split them at all? Because a benchmark that a vendor’s own installs can move is exactly what a procurement reviewer should reject. Rather than hope nobody notices, we designed the conflict out and put both numbers in daylight.

🎯 How confident should you be?

A score is worthless without knowing how much data backs it. So every scorecard carries a confidence badge and a plain “Scored on N of 6 dimensions” line:

  • High — 5–6 dimensions scored.
  • Medium — 4 dimensions (the healthy ceiling for a city without ride telemetry).
  • Low — 3 dimensions.
  • Minimal data — 2 or fewer.

Thin inputs (a tiny population, or under 10 km of mapped infrastructure) knock the confidence down a level. The final number lands in one of five bands:

ScoreBand
80–100World-class
65–79Strong
50–64Developing
35–49Emerging
0–34Early

🔬 How it holds up to other frameworks

We didn’t invent city-cycling measurement, and we’re not pretending our six numbers are the last word. There is decades of superb work in this field. So instead of ignoring it, we re-read the very same open data through the framing of the frameworks planners already trust — and present each as a clearly-labelled "-style" estimate computed by us, an approximation, never the programme’s own official score.

LensWhat we compute in its styleHonest caveat
ITDP-styleShare of residents within 300 m of protected infrastructure — ITDP’s “People Near Protected Bikelanes” ideaProtected class only
BNA-styleLow-stress network connectivity: we cluster the connected low-stress network and measure its largest component and reachA first approximation — full destination-access routing is deferred
Bike Score-styleInfrastructure density + destination access, scored on the components we can computeReported as “N of 4 components” — we never fake hills or census commute share
CROW-styleThe Dutch manual’s five design requirements as a diagnostic — cohesion, directness, safety, comfort and attractiveness, each rated where the data supports itDirectness from sampled detour routing; attractiveness from street lighting (greenery & noise still gaps)
Can-BICS-styleHigh / medium / low-comfort kilometres — a direct by-product of our classifier
Data quality (BikeDNA-style)Share of ways with surface tags, share unclassified, OSM data ageThe “don’t trust the other tiles too hard” reality check

The point isn’t to claim we are ITDP or BNA. It’s to let a city see itself from several recognised angles at once — and to be candid about where the established programmes go deeper than open data alone can reach. BNA’s full low-stress destination routing, Bike Score’s hill (DEM) and census commute-mode components — where we can’t compute something honestly, we mark it unscored rather than invent a plausible-looking number.

🚫 What we deliberately won’t fake

An index earns trust by being honest about its edges, so some things we refuse to estimate from a map:

  • Copenhagenize, the League’s Bicycle Friendly Community, and UCI Bike City all rely on qualitative review of policy, culture, funding and programmes. We don’t hold that data, so we don’t fabricate those scores.
  • Even within a lens we’re specific about what’s covered. Our CROW attractiveness rating, for example, now assesses street lighting (part of CROW’s social-safety requirement) — but greenery and noise remain honest gaps we don’t yet estimate. And every rated axis carries a coverage guard: a city whose data is too thin reads “not assessed”, never a misleadingly confident “poor”.

A cycling score that quietly guesses at what it can’t see isn’t a benchmark — it’s a marketing graphic. We’d rather show you the gaps.

🔁 It evolves — in the open

The index is versioned. Every scoring rule, target and input carries a methodology version, and when a city’s score is computed under a newer version than its previous snapshot, the scorecard says so: “Methodology updated — not directly comparable with earlier snapshots.” Cities should never mistake a change in our model for real progress on the ground.

The current version was itself a direct response to three independent external methodology reviews. Their highest-severity finding — that we were treating a painted lane like a protected track — is exactly the quality-weighting fix described above. Good measurement is a conversation, and we’d rather have it publicly.

🚴 See it live

The best way to understand the index is to read a real one. Our Sydney scorecard shows the whole picture: the dual composite, all six sub-scores with their levers, the benchmark lenses above, the confidence badge, and a weekly trend so you can watch the network change over time.

If you work for a city, an advocacy group or an employer and you’d like to see your own place scored — or you spot something the map gets wrong — we’d genuinely love to hear from you. Improve the map, and the number moves. That’s the whole idea.

Download Party Onbici to start turning everyday rides into the kind of open data that makes cities measurable — and, eventually, better to ride in.