Departure-Time Routing API

Departure-time routing with hourly speed profiles by road class and urban density

How it works

1

Set departure time

Pass depart_at as an ISO 8601 timestamp, or "now".

2

Plaza adjusts the route

Each road's speed is scaled by the factor for its class, the hour, and weekday or weekend. Both the path and the ETA can change.

3

Get a departure-time ETA

Distance, duration and geometry computed with the adjusted speeds.

See it in action

An example request and its response, drawn on the map.

terminal
$

Who uses this

Teams building with Departure-Time Routing API.

Transit planning

Predict commute times for different departure windows.

Logistics

Compare ETAs across departure windows and avoid typical peak hours.

Ride-hailing

Fare estimates that reflect the usual rush-hour slowdown.

Start building

curl -X POST "https://plaza.fyi/api/v1/route" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"depart_at": "now",
"destination": {
"coordinates": [
-73.9855,
40.758
],
"type": "Point"
},
"origin": {
"coordinates": [
-74.006,
40.7128
],
"type": "Point"
},
"traffic_model": "best_guess"
}'
View endpoints
Method Path Description
POST /api/v1/route Directions with depart_at or traffic_model parameters

How it compares

Google: $10/1K requests with traffic
Plaza: from $1.50/1K
Mapbox: Traffic data feed enterprise only
Plaza: Departure-time routing on every plan, free tier included
OSRM: No traffic support
Plaza: Hourly speed profiles by road class and density (no live traffic feed yet)

Common questions

Is traffic routing a paid add-on?

No. Google charges $10/1K for traffic-aware directions and $5/1K without. On Plaza, depart_at and traffic_model work on any route request at the normal premium rate.

What traffic models does Plaza support?

Three, set with traffic_model once you pass depart_at. best_guess (the default) uses the profile speed for the local wall-clock hour of depart_at. pessimistic caps every road at 70% of free-flow speed or lower. optimistic ignores slowdowns and routes at free-flow speed.

How current is the traffic data?

There is no live or measured traffic data yet. Speeds come from a fixed table of hourly slowdown factors for each road class (motorway, primary, residential and so on), with separate weekday and weekend curves shaped like a typical rush hour. The curves are modelled, not measured. What OpenStreetMap decides is how much of the slowdown a road gets: roads in a dense street network get all of it, suburban roads 60% and rural roads a quarter. Traffic lights also hold you longer at rush hour and less at night.

Does traffic affect isochrones and distance matrices too?

Yes. Send depart_at (and traffic_model if you want) to /isochrone or /matrix and car, truck, motorcycle and scooter times follow the same hourly profile routes use. Conditional road limits apply at that hour too. Leave depart_at out and you get free-flow speeds.