- Free allowance
- Free plan, USD 0 a month: 2,500 api requests daily for forward and reverse geocoding; the daily limit refreshes at midnight UTC, and sign-up needs no credit card
- Verdict
- caveatusable, with a named limit or an unprobed read path
- Cost
- free tier
- Identity
- emailno card, no phone
- Binding limit
- volume-quota2,500 api requests a day on the Free plan, refreshed at midnight UTC
- Evidence
- documented16 sources; a first-party page was read and the sentence quoted
- Freshness
- stale on 2026-12-03checked 2026-11-02 (live); stale on 2026-12-03
| Free tier | Free plan, USD 0 a month: 2,500 api requests daily for forward and reverse geocoding; the daily limit refreshes at midnight UTC, and sign-up needs no credit card unit requests; metered on request-count; no hard limit is set: responses are throttled if requests are more than 30% of the allowed quota daily |
|---|
| Price | none stated |
|---|
| Limits | - volume-quota (binding) 2,500 api requests a day on the Free plan, refreshed at midnight UTC source
- request-rate no hard limit is set; responses are throttled if requests are more than 30% of allowed quota daily source
- per-object-cap the q parameter is limited to 50 characters, one query a request source
|
|---|
| Binding | volume-quota no per-second limit is published, so the stated 2,500-request day is the ceiling that is met first |
|---|
| Identity | email an account at geokeo.com/signup.php with a name, an email address, a password and a CAPTCHA; the home page says to sign up without any credit card; the service stores the email address, billing address and name |
|---|
| Egress | not applicable: a query API metered in requests, not bytes |
|---|
| Per-object cap | one query a request: the q parameter takes up to 50 characters; no batch endpoint is documented |
|---|
| Retention | the service does not store query requests |
|---|
| Interface | rest HTTPS GET to geokeo.com/geocode/v1/search.php (q and api parameters) for forward and /geocode/v1/reverse.php (lat, lng and api) for reverse geocoding, JSON or XML; a keyless call answered HTTP 200 with the JSON status INVALID_REQUEST, so the status field carries the error, not the HTTP code |
|---|
| Tooling | any HTTP client |
|---|
| Composes with | 2,500 storable forward or reverse geocodes a day on a name, email and password account with no card, built from OpenStreetMap, GeoNames and Natural Earth data; one query per request, so bulk work is sent as many single requests |
|---|
| Reliability | a request over the allowance is throttled rather than refused; an application error such as INVALID_REQUEST comes back with HTTP 200, so the JSON status field must be read |
|---|
| Notes | Free requests: 2,500 a day. Rate limit: no hard limit, throttled above the quota. Bulk path: none; single forward and reverse queries only. |
|---|
| Evidence note | documented the pricing page, the documentation, the sign-up page and the home page were quoted on 2026-11-02; a keyless call answered HTTP 200 with the JSON status INVALID_REQUEST. No account was opened, so the free daily allowance was not exercised. |
|---|
| Parsed numbers | |
|---|