Vélib network visualization

Station n°#
Available bikes
Free spots
Total spots
Find a station
Address & city


Full station: no empty spot to park
Empty station: no bike to rent
Bonus station: you get a 15 minute bonus for parking here
Out of order: you can neither park nor rent a bike

What can I learn?

You can travel in time and try to find patterns on the Vélib usage. Using the address locator, you can get some insights on where to park your bike when you're coming home or arriving at work, depending on the time. Or just find strange and interesting correlations, like how does a rainy day affects the network, or when do the city workers reshuffle the bikes around the city, etc.

Here are a couple of interesting patterns to begin with:

La Seine

Most of the time you will be able to spot la Seine, the river that crosses Paris from Southeast to Southwest. Water runs downhill, and bikers tend to do the same: stations around the banks will often find themselves full, whereas uphill areas are usually empty. To [try to] prevent permenant imbalance between such stations, bonus stations incentivize journeys ending uphill.

The Music Night

Every year in Paris , on the 21st of June, is held the "Fête de la Musique", or Music Night: many gigs, be they amateur bands or world famous popstars, are organized all night long. In 2012, the biggest ones were located around the Town Hall (Hôtel de Ville), and by 10pm hundreds of people found themselves with no place to park their Vélib.

What is this map?

This map is centered on Paris and shows the latest available snapshot of the Vélib bike network.

You can pick another date with the date picker and load another snapshot, or hover your mouse over a cell to inspect the data of the related station.

How was it built?

This map uses data freely available from the city of Paris's official Vélib website.

Cells are drawn using a Voronoi decomposition, where every Vélib station generates a region around itself, made of all the points that are closest to it.

Nota bene: My dataset only spans from the end of March, 2012, to today. If you have relevant data from prior dates, or you noticed a bug, or want to suggest a clever evolution, please contact me at @

Built with nodejs and d3js.