Pricing

Simple, usage-based pricing

Free forever with no commitment. Scale as you grow. Billed by query credits, not raw request counts.

Free

$0/ month
4 000 000 * credits/month
8 req/second
  • Generous free tier
  • Hobby projects
  • Community support
  • Usage analytics
Get started

Standard

$19/ month
unlimited credits/month
16 req/second
  • Small to medium production use
  • Larger bounding boxes
  • Higher rate limits
  • Dedicated support
Start Standard
Most popular

Premium

$79/ month
unlimited credits/month
64 req/second
  • Medium to large scale projects
  • Custom SQL queries
  • Everything in Standard
  • Priority support
Start Premium

Enterprise

Quoted
unlimited credits/month
unlimited req/second
  • Dedicated PostGIS instances
  • Custom rate limits
  • Forward deployed integrations
  • Gauranteed consulting services & support
Contact Us

How query credits work

Each request costs a certain amount of credits. If it exceeds your per-request cap it is rejected to protect your quota.

Num of Monthly Requests *

1 request is typically around 2 to 50 credits, so 4 000 000 credits/month is roughly 80k to 2M requests/month depending on query complexity.

Spatial area

Larger bounding boxes and radii cost more. A 1° by 1° tagged bbox costs roughly 10x more than 0.1° by 0.1°.

Tag filters

Specific tag filters (amenity=restaurant) reduce cost. No tags at all costs 6x more because the full dataset must be scanned.

Element type and shape

Cost scales linearly with the number of tables queried. This is determined by query OSM element type (node, way, or relation) and optional shape (line and polygon) to narrow geometry.

Result limit

Each additional 800-row block adds one unit multiplier. Keeping limit at 800 or below avoids a surcharge.

Cost preview

Use GET /v2/osm_features/cost with the same parameters to see the unit estimate and hints before committing a request.

Frequently asked questions

What is a query unit?

A query unit is an internal cost credit, not a request count. Cost is deterministic and estimated before execution based on search area, filters, element types, and limit. Small, selective queries are usually 1-10 units; broad scans can cost much more.

How do spatial limits work?

Spatial limits scale by tier and query selectivity. More selective tagged queries can cover larger areas, while broad tag-free scans have tighter caps to keep performance predictable for all users.

Why does a tag-free scan cost more?

Without a tag filter the server must examine every OSM feature in the search area, which is far more expensive than a selective index scan. Tag-free bounding boxes also have tighter area limits to protect the service.

Are negative tag filters (not_tags) expensive?

Yes. A not_tags-only query has no positive index to exploit and behaves like a tag-free scan. Use at least one positive tag= filter alongside not_tags to reduce cost.

What happens if I exceed my limit?

Requests that would exceed your monthly unit budget return HTTP 429. Requests that exceed the per-request unit cap are rejected before touching the database. Per-request caps are 5% of monthly units on Free and 1% on paid tiers. You can upgrade your tier at any time from the dashboard.

Can I self-host MapLark?

Open standards (GeoJSON + OSM tags) and our client SDKs are open source today. A self-hostable server for your own PostGIS is coming; contact us for Enterprise deployment support in the meantime.

What data is available?

All OpenStreetMap element types for the entire planet.

Is the data open?

Yes. OSM data is available under the Open Database Licence (ODbL). You must attribute © OpenStreetMap contributors in any public-facing usage.

Do I need a credit card for the free tier?

No. Sign up with email or Google, pick a tier, and start making requests immediately.