{
  "data": {
    "a": {
      "slug": "geocodio",
      "name": "Geocodio",
      "vendor": "Dotsquare LLC",
      "vendorUrl": "https://www.geocod.io",
      "kind": "http-api",
      "category": "maps",
      "summary": "Geocodio is a hosted geocoding API from Dotsquare LLC for addresses in the US, Canada, Mexico, the UK, Australia and New Zealand. It does forward, reverse and batch geocoding, distance matrices and census, district and timezone data appends.",
      "url": "https://www.anchorterminal.com/tools/geocodio",
      "markdownUrl": "https://www.anchorterminal.com/tools/geocodio.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/geocodio.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/geocodio.json",
      "dns": "geocodio.grade.anchorterminal.com",
      "repo": "https://github.com/Geocodio/geocodio-cli",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "geocodio-library-python"
        },
        {
          "registry": "npm",
          "name": "geocodio-library-node"
        }
      ],
      "auth": "api-key",
      "authNotes": "API key from the dashboard at dash.geocod.io after a browser signup, sent as `Authorization: Bearer` (since March 2025) or the `api_key` query parameter, which the docs and the OpenAPI spec still lead with. Five keys on pay-as-you-go. A new key reaches single and batch geocoding only; the Lists and Distance APIs must be enabled per key.",
      "pricing": "freemium",
      "pricingNotes": "2,500 lookups a day free on pay-as-you-go with no card until usage passes the free tier, then $1 per 1,000 lookups billed on the 1st of the next month. Each data append is one more lookup. Flex plans from $315 a month for 350,000 credits, Unlimited from $1,600 a month per dedicated instance.",
      "priceSummary": "$1 / 1k req",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in llms.txt, AGENTS.md, the docs or the OpenAPI spec (checked 2026-11-06). Billing is by card on file, monthly in arrears on pay-as-you-go.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 20984,
        "pypiWeekly": 921,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://www.geocod.io/docs/",
      "llmsTxt": "https://www.geocod.io/llms.txt",
      "openapi": "https://api.geocod.io/openapi-spec.json",
      "capabilities": [
        "geo.geocode",
        "geo.reverse",
        "geo.routing"
      ],
      "tags": [
        "hosted",
        "api-key",
        "freemium",
        "free-tier",
        "no-card",
        "llms-txt",
        "openapi",
        "official",
        "cli",
        "agent-skills",
        "python",
        "typescript",
        "php",
        "ruby",
        "batch",
        "async-jobs",
        "status-page",
        "security-txt",
        "enterprise",
        "soc2",
        "closed-source"
      ],
      "lastRelease": "2026-11-03",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 72.2,
        "grade": "BB",
        "agentReady": true,
        "rank": 138,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 4,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 86,
          "payments": 40,
          "reliability": 70,
          "schema": 92,
          "security": 58,
          "transparency": 87
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "high",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "Geocodio publishes llms.txt, an AGENTS.md on cost and retries, an OpenAPI spec and a dated changelog, and its results may be stored permanently. Coverage stops at six countries, there's no MCP server or published SLA for self-serve plans, and the docs still put the key in the query string by default.",
        "bestFor": "Batch geocoding and district or census enrichment of addresses in the US, Canada, Mexico, the UK, Australia and New Zealand, where results must be stored.",
        "strengths": [
          "llms.txt and AGENTS.md cover billing arithmetic, retry rules, idempotency on the client and when not to use the API",
          "2,500 free lookups a day with no card, then $1 per 1,000, and zero-result lookups aren't billed",
          "Results may be stored and reused permanently, except UK reverse geocoding addresses",
          "Dated API changelog with versioned paths, and replaced versions kept for at least 12 months",
          "Official Python, Node, PHP and Ruby libraries and a CLI with an agent output mode, all MIT"
        ],
        "weaknesses": [
          "Covers only the US, Canada, Mexico, the UK, Australia and New Zealand, and UK needs a Flex or Unlimited plan",
          "The docs lead with the api_key query parameter, and the OpenAPI spec defines only that scheme",
          "No idempotency key on batch or list creation, so a retried upload is billed again",
          "No MCP server, and no published SLA on self-serve plans",
          "SOC 2 Type II and penetration tests apply to the separate Enterprise platform only"
        ],
        "agentNotes": [
          "Always set `country`, because an address with none falls back to the US and is billed even when it's wrong",
          "Send the key as `Authorization: Bearer`, not in the query string, so it stays out of logs",
          "Use batch POST /geocode (up to 10,000 lookups) or the Lists API rather than looping single requests",
          "Treat accuracy_type place, county or state as not found, and check `_warnings` for appends that were billed but skipped",
          "Don't retry 403 or 422. On 429 read X-RateLimit headers and back off, and never re-upload a list sitting in ENQUEUED"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "high",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 72.2
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 86,
          "payments": 40,
          "reliability": 70,
          "schema": 92,
          "security": 58,
          "transparency": 80
        },
        "provenanceScore": 93,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install geocodio-library-python",
        "http": "curl -H \"Authorization: Bearer $GEOCODIO_API_KEY\" \"https://api.geocod.io/v2.1/geocode?q=1109+N+Highland+St,+Arlington+VA\u0026country=USA\""
      },
      "letme": {
        "capability": "https://letme.dev/geo.geocode",
        "tool": "https://letme.dev/geocodio"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Lookup after the free tier, pay-as-you-go",
          "unit": "1k-requests",
          "usd": 1,
          "note": "2,500 lookups a day free. A lookup is one address or coordinate, and each data append is one more"
        },
        {
          "item": "Flex 350 plan",
          "unit": "month",
          "usd": 315,
          "note": "350,000 credits a month ($0.90 per 1,000), rolling over while subscribed"
        },
        {
          "item": "Unlimited Geocoding plan",
          "unit": "month",
          "usd": 1600,
          "note": "One dedicated instance, up to 5 million lookups a day; distance credits extra at $1 per 1,000"
        }
      ],
      "provenance": {
        "legalEntity": "Dotsquare LLC",
        "domain": "geocod.io",
        "domainRegistered": "2013-06-05",
        "endpointOnVendorDomain": true,
        "terms": "https://www.geocod.io/terms-of-use",
        "privacy": "https://www.geocod.io/privacy-policy",
        "statusPage": "https://status.geocod.io",
        "changelog": "https://www.geocod.io/docs/#changelog",
        "securityTxt": "valid",
        "checked": "2026-11-06",
        "notes": [
          "The terms name Dotsquare LLC, dba Geocodio, 440 Monticello Ave Ste 1802 #43146, Norfolk, Virginia, and choose Virginia law.",
          "The terms' acceptable use section bars customers from 'web scraping or data scraping on or related to the System, including ... any bot or web crawler'. Recorded as a fact; robots.txt on www.geocod.io allows all agents.",
          "security.txt at www.geocod.io/security.txt names security@geocod.io, a PGP key and a responsible disclosure policy, and expires 30 January 2030.",
          "RDAP gives geocod.io a registration date of 5 June 2013. The about page says Geocodio launched in 2014.",
          "llms.txt links https://www.geocod.io/pricing.md as the current pricing in Markdown, but that URL returned a 404 page on 6 November 2026, so prices come from the HTML pricing page."
        ],
        "score": 93
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/geocodio.json",
      "live": {
        "slug": "geocodio",
        "vendorStatus": {
          "page": "https://status.geocod.io",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T19:22:12.77760537Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Geocodio/geocodio-cli",
            "version": "v3.3.0",
            "released": "2026-08-31",
            "seenAt": "2026-11-06T23:28:00.884456202Z"
          },
          {
            "registry": "npm",
            "name": "geocodio-library-node",
            "version": "2.2.0",
            "seenAt": "2026-11-06T23:28:00.414999469Z"
          },
          {
            "registry": "pypi",
            "name": "geocodio-library-python",
            "version": "1.6.0",
            "released": "2026-10-16",
            "seenAt": "2026-11-06T23:27:57.978816079Z"
          }
        ],
        "githubStars": 3,
        "npmWeekly": 20984,
        "pypiWeekly": 921,
        "securityTxt": {
          "url": "https://geocod.io/.well-known/security.txt",
          "state": "valid",
          "expires": "2030-01-30T00:00:00.000Z",
          "checkedAt": "2026-11-07T16:01:17.012285777Z"
        },
        "llmsTxt": {
          "url": "https://www.geocod.io/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:35.723551581Z"
        },
        "pages": [
          {
            "url": "https://www.geocod.io/docs/",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:29:02.899876797Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "9bcdba9ab6f4"
          },
          {
            "url": "https://www.geocod.io/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:29:05.843886759Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "712b2145deac"
          },
          {
            "url": "https://www.geocod.io/terms-of-use",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:29:07.288294893Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ff5d2a37483d"
          }
        ],
        "updatedAt": "2026-11-07T19:22:12.77760537Z"
      }
    },
    "answer": "Geocodio scores 72.2 (BB) on agent readiness against Radar's 53.3 (D), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "radar",
      "name": "Radar",
      "vendor": "Radar Labs",
      "vendorUrl": "https://radar.com",
      "kind": "http-api",
      "category": "maps",
      "summary": "Radar is a location platform from Radar Labs with REST APIs for forward, reverse and IP geocoding, address autocomplete and validation, places search, distance, matrix, directions and route optimisation, plus geofencing, trip tracking and base maps.",
      "url": "https://www.anchorterminal.com/tools/radar",
      "markdownUrl": "https://www.anchorterminal.com/tools/radar.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/radar.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/radar.json",
      "dns": "radar.grade.anchorterminal.com",
      "repo": "https://github.com/radarlabs/radar-sdk-js",
      "license": "Proprietary service under Radar's Terms of Use. The web SDK in radarlabs/radar-sdk-js is Apache-2.0",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.radar.io/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "radar-sdk-js"
        }
      ],
      "auth": "api-key",
      "authNotes": "API key in the `Authorization` header, with no query-string option documented. Each project has four keys, test and live, publishable and secret. Publishable keys reach 16 of the 38 documented operations (4 November 2026), including all geocoding, search and routing calls, and can be restricted by website domain or mobile app identifier. Secret keys reach the rest and can read or write any data. Keys come from the dashboard. Whether sign-up is self-serve was not established, because dashboard.radar.com's robots.txt closes every path.",
      "pricing": "paid",
      "pricingNotes": "Core Maps (forward, reverse and IP geocoding, autocomplete, static maps, distance, directions, matrix) starts at $0.50 per 1,000 API calls and Premium Maps (address validation, places search, route matching, route optimisation, satellite maps) at $2.00. Matrix bills per element. Every plan is an annual commitment with a monthly quota, at a rate Radar sets by quote. The pricing page says there is no free tier, and that teams can start with a technical validation period arranged with sales (https://radar.com/pricing).",
      "priceSummary": "$0.50 / 1k req",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API reference, the docs index or the pricing page (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://docs.radar.com/api",
      "llmsTxt": "https://docs.radar.com/llms.txt",
      "capabilities": [
        "geo.geocode",
        "geo.reverse",
        "geo.places",
        "geo.routing",
        "geo.tiles"
      ],
      "tags": [
        "hosted",
        "api-key",
        "llms-txt",
        "status-page",
        "sales-led",
        "annual-contract",
        "soc2",
        "closed-source"
      ],
      "lastRelease": "2026-10-13",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 53.3,
        "grade": "D",
        "agentReady": false,
        "rank": 955,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 16,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 65,
          "maintenance": 77,
          "payments": 10,
          "reliability": 70,
          "schema": 50,
          "security": 56,
          "transparency": 55
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-04"
        },
        "negative": -2,
        "negativeNotes": [
          "9 October 2026, re-read 4 November 2026. The Maps product page still says the geocoding APIs come with 'the right to store, reuse, and export results freely' (https://radar.com/product/maps), while section 2(d) of the Terms of Use forbids storing address or point-of-interest data from the geocoding, autocomplete or place search APIs for more than 30 days (https://radar.com/terms) and the geocoding docs repeat the 30-day limit (https://docs.radar.com/maps/geocoding.md). 2 points for a claim the published terms contradict. A quoted enterprise agreement may differ and is not published."
        ],
        "verdict": "Radar documents 38 REST operations in Markdown with a rate limit on each, and its status feed shows two API incidents of elevated errors or latency in 90 days. Access is sales-led. The pricing page says there is no free tier, every plan is an annual commitment, and no OpenAPI description or API changelog was found.",
        "bestFor": "A company that already has a Radar contract, or wants geofencing and trip tracking with geocoding and routing on one key.",
        "strengths": [
          "Each of the 38 documented operations states its key level and a default rate limit, from 10 to 100 requests a second",
          "docs.radar.com publishes llms.txt and a Markdown twin of every page, including the whole API reference in one file",
          "Statuspage history lists two API incidents in the 90 days to 4 November 2026, about an hour of errors and about three hours of latency",
          "Publishable keys are limited to 16 client-safe operations and can be restricted by website domain or mobile app identifier",
          "The DPA names two sub-processors (AWS and MongoDB) and the FAQ states default retention periods"
        ],
        "weaknesses": [
          "The pricing page says Radar has no free tier and every plan is an annual commitment set by quote",
          "No OpenAPI description and no API changelog were found in the docs index",
          "The terms cap storage of geocoding, autocomplete and place results at 30 days, while the Maps product page claims a right to store results freely",
          "The terms of 24 May 2023 let Radar change or stop the services without notice, and still describe a free version",
          "A secret key can read or write any project data, with no scopes found",
          "The terms forbid using the services to develop or test other geocoding, autocomplete or place search APIs, which matters before any probe is run"
        ],
        "agentNotes": [
          "Send the key in the `Authorization` header with no `Bearer` prefix, and call `https://api.radar.io/v1`, not radar.com",
          "Use a publishable key for geocoding, search and routing. Keep the secret key for users, trips, geofences and beacons",
          "Call `/v1/search/autocomplete` for partial addresses and place names. `/v1/geocode/forward` is documented as best for complete addresses",
          "Set `units=metric` on routing calls. The default is imperial, with distances in feet",
          "Treat 429 as one of three things (rate limit, no state change or selective throttling) and 402 as usage exceeded. No Retry-After header is documented",
          "Do not keep geocoding, autocomplete or place results for more than 30 days"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 53.3
          }
        ],
        "editorialScores": {
          "ergonomics": 65,
          "maintenance": 77,
          "payments": 10,
          "reliability": 70,
          "schema": 50,
          "security": 56,
          "transparency": 51
        },
        "provenanceScore": 59,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-04",
            "maintenance": "2026-11-04",
            "payments": "2026-11-04",
            "reliability": "2026-11-04",
            "schema": "2026-11-04",
            "security": "2026-11-04",
            "transparency": "2026-11-04"
          },
          "last": "2026-11-04",
          "oldest": "2026-11-04",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install radar-sdk-js",
        "http": "curl \"https://api.radar.io/v1/geocode/forward?query=20+jay+st+brooklyn+ny\" -H \"Authorization: $RADAR_PUBLISHABLE_KEY\""
      },
      "letme": {
        "capability": "https://letme.dev/geo.geocode",
        "tool": "https://letme.dev/radar"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Core Maps API calls, starting price",
          "unit": "1k-requests",
          "usd": 0.5,
          "note": "Geocoding, autocomplete, static maps, distance, directions, matrix (per element). Annual commitment, rate set by quote"
        },
        {
          "item": "Premium Maps API calls, starting price",
          "unit": "1k-requests",
          "usd": 2,
          "note": "Address validation, places search, route matching, route optimisation, satellite maps. Annual commitment, rate set by quote"
        }
      ],
      "provenance": {
        "legalEntity": "Radar Labs, Inc.",
        "domain": "radar.com",
        "domainRegistered": "1994-12-16",
        "endpointOnVendorDomain": false,
        "terms": "https://radar.com/terms",
        "privacy": "https://radar.com/privacy",
        "statusPage": "https://status.radar.com",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-04",
        "notes": [
          "The privacy notice (last updated 13 May 2025) names Radar Labs, Inc., a Delaware corporation in New York, per the 9 October 2026 check.",
          "The Terms of Use (last updated 24 May 2023, re-read 4 November 2026) cover the SDK and Radar's APIs and incorporate the DPA at radar.com/dpa. They describe a free version, which the pricing page says Radar does not have. They contain no clause on automated access to the website. Paid plans are by quote, and no enterprise agreement is published.",
          "The API answers at api.radar.io, a second domain. Nothing was sent to it, and its registrant was not checked.",
          "radar.com/.well-known/security.txt answers 404 (4 November 2026). The FAQ gives security@radar.com for reports.",
          "No API changelog was found in the docs index (4 November 2026). The SDK repositories have dated release tags.",
          "RDAP gave 16 December 1994 as the registration date of radar.com on 9 October 2026 (not re-read; RDAP is a JSON service).",
          "robots.txt on 4 November 2026. radar.com 200 with a sitemap line only. docs.radar.com 200 for all agents, /cdn-cgi/ and /_next/ disallowed, Content-Signal ai-train=yes, search=yes, ai-input=yes. status.radar.com 200 disallowing /api/ and /embed/. dashboard.radar.com disallowed every path on 9 October (not re-read)."
        ],
        "score": 59
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/radar.json",
      "live": {
        "slug": "radar",
        "probe": {
          "target": "https://api.radar.io/v1",
          "method": "get",
          "lastAt": "2026-11-07T19:22:28.638139376Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 132,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.93,
          "p50ms24h": 127,
          "p95ms24h": 229,
          "samples24h": 238,
          "samples30d": 7215,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-29",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 243
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 197,
              "ok": 197
            }
          ],
          "outages": [
            {
              "start": "2026-11-03T11:49:09.103056402Z",
              "end": "2026-11-03T12:18:34.21468377Z",
              "note": "timed out"
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.radar.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T19:23:33.704456906Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "radarlabs/radar-sdk-js",
            "version": "maps-v1.2.0",
            "released": "2026-10-15",
            "seenAt": "2026-11-07T00:00:04.44338016Z"
          },
          {
            "registry": "npm",
            "name": "radar-sdk-js",
            "version": "5.2.0",
            "seenAt": "2026-11-07T00:00:02.395906253Z"
          }
        ],
        "githubStars": 52,
        "npmWeekly": 127337,
        "securityTxt": {
          "url": "https://radar.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:06.937447505Z"
        },
        "llmsTxt": {
          "url": "https://docs.radar.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:43.359883875Z"
        },
        "domain": {
          "domain": "radar.com",
          "registered": "1994-12-16",
          "source": "https://rdap.verisign.com/com/v1/domain/radar.com",
          "checkedAt": "2026-11-01T14:26:44.033610339Z"
        },
        "pages": [
          {
            "url": "https://radar.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:17:52.554845922Z",
            "changedAt": "2026-11-06T13:39:31.015729856Z",
            "fingerprint": "34830dec8146"
          },
          {
            "url": "https://radar.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:17:54.663856655Z",
            "changedAt": "2026-11-06T13:39:33.138157539Z",
            "fingerprint": "3c21c931b16e"
          },
          {
            "url": "https://radar.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:17:56.689904287Z",
            "changedAt": "2026-11-06T13:39:35.353975966Z",
            "fingerprint": "854a0ce74930"
          }
        ],
        "github": {
          "repo": "radarlabs/radar-sdk-js",
          "checkedAt": "2026-11-02T09:20:06.168958113Z",
          "stars": 52,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-29T20:13:29Z",
          "openIssues": 4,
          "openPRs": 30,
          "issuesOpened90d": 0,
          "issuesClosed90d": 0,
          "prsMerged90d": 9,
          "ci": {
            "branch": "master",
            "runs": 23,
            "success": 23,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-10-28T22:18:51Z"
          },
          "replies": {
            "sampled": 22,
            "unanswered": 4,
            "medianDays": 96.4
          }
        },
        "updatedAt": "2026-11-07T19:23:33.704456906Z"
      }
    },
    "edges": [
      {
        "by": 42,
        "category": "schema",
        "leads": "geocodio",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "OpenAPI 3.0.1 spec, version 2.1.0, with 11 paths (25). llms.txt and an AGENTS.md written for agents (10). llms.txt and AGENTS.md say when to use each endpoint and when not to, such as the Lists API over looping single calls, the upload tool for a one-off spreadsheet and straightline over driving distance unless road distance is needed (19). Typed parameters with country values, component fields and documented limits, though `fields` is a comma-separated string (12). Error table with retry guidance, examples throughout, but the spec documents 200, 400, 403, 404, 422 and 424 and not 429 or 500 (11). Versioned paths from v1 to v2.1 and a dated public changelog with entries back to 2024 (15). 25+10+19+12+11+15 = 92.",
          "b": "No OpenAPI description or other machine-readable contract was found in the docs index (0). docs.radar.com publishes llms.txt and a Markdown twin of each page, with the whole API reference in one Markdown file of about 154 KB (10). Descriptions say what an operation is for and sometimes when to use another, for example forward geocoding for complete addresses and autocomplete for partial ones (14). Parameters are listed with type, required or optional, ranges and allowed values, though coordinate lists travel as pipe-delimited strings and there is no schema to validate against (11). Every operation has a sample request and response, and there is one list of 12 response codes with one sample error (11). Paths carry `/v1`, and no API changelog was found (4). 0 + 10 + 14 + 11 + 11 + 4 = 50."
        },
        "scores": {
          "a": 92,
          "b": 50
        }
      },
      {
        "by": 32,
        "category": "transparency",
        "leads": "geocodio",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Editorial half only. Closed service with clear, dated terms under Virginia law, and libraries and CLI under MIT (20). The privacy policy says API and spreadsheet input and results are deleted within 45 days, error logs kept 90 days, and customer data isn't used to train AI models. A separate data retention policy and llms.txt put Lists API data at 72 hours. Results may be stored permanently by the customer (27). Replaced API versions are guaranteed for at least 12 months, breaking changes come only with a new version, and the changelog marks each one 'Breaking' (18). The privacy policy names its processors, such as Sentry and Laravel Nightwatch, and the security page says self-serve is hosted in Europe (15). 20+27+18+15 = 80.",
          "b": "Closed service with public Terms of Use, and an Apache-2.0 web SDK. The terms date from 24 May 2023, describe a free version the pricing page says does not exist, and paid plans run on a quoted agreement that is not published (12). The privacy notice of 13 May 2025, a public DPA and the FAQ agree on a default retention of 1 year, with 90 days for trips and 7 days for location updates in the FAQ. The privacy notice itself gives no period (22). No deprecation policy was found, and the terms let Radar change or stop the services without notice. One parameter (`userId` on geofences) is marked deprecated with no date (2). The DPA names AWS and MongoDB as sub-processors, and the privacy notice says hosting is in the United States (15). 12 + 22 + 2 + 15 = 51. The privacy notice and DPA weren't re-read on 4 November, so their readings are per the 9 October check."
        },
        "scores": {
          "a": 87,
          "b": 55
        }
      },
      {
        "by": 30,
        "category": "payments",
        "leads": "geocodio",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0). $1 per 1,000 lookups after the free tier, and per-credit rates for every Flex tier, public without login (20). 2,500 lookups a day free with no card until usage passes the free tier (20). Signup and key creation are a browser flow at dash.geocod.io (0). 0+20+20+0 = 40.",
          "b": "No x402, MPP or L402 (0). The pricing page publishes starting prices without a login, $0.50 per 1,000 calls for Core Maps and $2.00 for Premium Maps, but every plan is an annual commitment at a rate set by quote (10). The pricing page says \"Radar does not currently offer a free tier\", and the technical validation period goes through sales (0). Keys come from a dashboard account, and the sign-up page was closed to us by robots.txt on 9 October, so no programmatic route was found (0). 0 + 10 + 0 + 0 = 10."
        },
        "scores": {
          "a": 40,
          "b": 10
        }
      },
      {
        "by": 15,
        "category": "ergonomics",
        "leads": "geocodio",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "API reading. `limit`, opt-in `fields` appends and `stable_address_key` re-lookups size responses and cost, and results are ordered best first (20). Batches of 10,000 lookups, Lists for 10 million, distance filters (max_distance, max_results, order_by) and paginated list listings (17). Codes 403, 422, 429 and 500 each carry a documented meaning and retry rule, error bodies link a help page, and `_warnings` reports ignored parameters (18). Geocoding reads are safe to retry, but there's no idempotency key on batch or list creation and AGENTS.md says a retried request is billed again (10). One required parameter on a single geocode, and official libraries for Python, Node, PHP and Ruby plus a CLI with `--agent` output (15). 20+17+18+10+15 = 80.",
          "b": "Read as an API. `limit` on search operations (1 to 100), `layers` and `country` filters on geocoding, and optional `geometry` on route optimisation size a response, with no field selection (14). List operations page with `limit` up to 1,000 and date cursors such as `updatedBefore` (16). Errors are JSON with `code`, `param` and `message`, and every response carries `X-Radar-Request-ID` (15). The maps operations only read. Geofence and beacon writes are PUT upserts by external ID, and no idempotency key was found for trip or user creation (10). Most maps calls need one parameter. Official SDKs cover web, iOS, Android and five cross-platform frameworks, all client-side, with no server library found (10). 14 + 16 + 15 + 10 + 10 = 65."
        },
        "scores": {
          "a": 80,
          "b": 65
        }
      },
      {
        "by": 9,
        "category": "maintenance",
        "leads": "geocodio",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "API v2.1 released 3 November 2026 (Australia and New Zealand), and PHP library 3.4.1 on 4 November (30). Dated changelog entries on 8 September, 1, 8, 9, 19, 22 and 31 October and 3 November 2026, plus library releases in October (20). Public changelog, support by email and a team-staffed help desk named on the pricing page. We didn't read GitHub issue reply times (12). Official Python 1.6.0 and Node 2.3.0 from 12 October and PHP 3.4.1 from 4 November are current (15). Each library and the CLI run CI on GitHub Actions; we didn't check whether the runs pass (9). 30+20+12+15+9 = 86.",
          "b": "No API changelog was found, so recency rests on Radar's own SDKs. radar-sdk-android 4.2.0 on 29 October and radar-sdk-ios 3.45.0 on 27 October 2026, and in the listed web SDK, maps-v1.2.0 on 13 October (a MapLibre upgrade with changes to RadarMap.ts and RadarMarker.ts), all within 30 days (30). Stable tags in the 90 days from 6 August include web v5.1.2 (25 August), v5.1.3 (31 August), v5.2.0 (1 September), autocomplete-v1.1.1 (14 September) and maps-v1.2.0, iOS 3.40.0 to 3.45.0 and Android 3.37.0 to 4.2.0; betas aren't counted (20). No public changelog for the API, support through a customer success manager and a feedback form, and GitHub issue replies were not read (5). Official SDKs for eight platforms are current (15). The web SDK repository carries Jest tests and CodeQL and npm publish workflows, whose results were not read (7). 30 + 20 + 5 + 15 + 7 = 77."
        },
        "scores": {
          "a": 86,
          "b": 77
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Dotsquare LLC",
        "b": "Radar Labs",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.radar.io/v1",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "$1600 per month (plan)",
        "b": "not published",
        "name": "Price for geocoding"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "Proprietary service under Radar's Terms of Use. The web SDK in radarlabs/radar-sdk-js is Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-11-03",
        "b": "2026-10-13",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2023-05-24",
        "name": "Terms last updated"
      },
      {
        "a": "2018-05-25",
        "b": "2025-05-13",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "21k npm/wk, 921 PyPI/wk",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Geocodio scores 72.2 (BB) on agent readiness against Radar's 53.3 (D), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, Geocodio or Radar?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Geocodio and Radar need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Geocodio. Radar has a hosted endpoint at https://api.radar.io/v1.",
        "question": "Can an agent call Geocodio and Radar without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 92 against 50",
          "Agent ergonomics, 80 against 65",
          "Payments \u0026 pricing, 40 against 10",
          "Maintenance \u0026 community, 86 against 77",
          "Transparency \u0026 trust, 87 against 55"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Free to start without a card"
        ],
        "goodFor": "Batch geocoding and district or census enrichment of addresses in the US, Canada, Mexico, the UK, Australia and New Zealand, where results must be stored.",
        "slug": "geocodio",
        "watchFor": "Covers only the US, Canada, Mexico, the UK, Australia and New Zealand, and UK needs a Flex or Unlimited plan"
      },
      {
        "aheadOn": null,
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "A company that already has a Radar contract, or wants geofencing and trip tracking with geocoding and routing on one key.",
        "slug": "radar",
        "watchFor": "The pricing page says Radar has no free tier and every plan is an annual commitment set by quote"
      }
    ],
    "history": null,
    "job": {
      "capability": "geo.geocode",
      "name": "Geocoding"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-location-vs-geocodio.json",
        "title": "Amazon Location Service vs Geocodio",
        "url": "https://www.anchorterminal.com/compare/amazon-location-vs-geocodio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-location-vs-radar.json",
        "title": "Amazon Location Service vs Radar",
        "url": "https://www.anchorterminal.com/compare/amazon-location-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcgis-vs-geocodio.json",
        "title": "ArcGIS Location Platform vs Geocodio",
        "url": "https://www.anchorterminal.com/compare/arcgis-vs-geocodio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcgis-vs-radar.json",
        "title": "ArcGIS Location Platform vs Radar",
        "url": "https://www.anchorterminal.com/compare/arcgis-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-geocodio.json",
        "title": "Azure Maps vs Geocodio",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-geocodio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-radar.json",
        "title": "Azure Maps vs Radar",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geoapify-vs-geocodio.json",
        "title": "Geoapify Location Platform + MCP vs Geocodio",
        "url": "https://www.anchorterminal.com/compare/geoapify-vs-geocodio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geoapify-vs-radar.json",
        "title": "Geoapify Location Platform + MCP vs Radar",
        "url": "https://www.anchorterminal.com/compare/geoapify-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-google-maps-platform.json",
        "title": "Geocodio vs Google Maps Platform + Grounding Lite MCP",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-google-maps-platform"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-here-location-services.json",
        "title": "Geocodio vs HERE Location Services",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-here-location-services"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-locationiq.json",
        "title": "Geocodio vs LocationIQ",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-locationiq"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-mapbox.json",
        "title": "Geocodio vs Mapbox APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-mapbox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-mapquest.json",
        "title": "Geocodio vs MapQuest",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-mapquest"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-maptiler.json",
        "title": "Geocodio vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-maptiler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-nextbillion.json",
        "title": "Geocodio vs NextBillion.ai",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-nextbillion"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-nominatim.json",
        "title": "Geocodio vs Nominatim",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-nominatim"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-opencage.json",
        "title": "Geocodio vs OpenCage Geocoding API",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-opencage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-stadia-maps.json",
        "title": "Geocodio vs Stadia Maps",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-stadia-maps"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-tomtom.json",
        "title": "Geocodio vs TomTom Maps APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-tomtom"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geocodio-vs-woosmap.json",
        "title": "Geocodio vs Woosmap",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-woosmap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-maps-platform-vs-radar.json",
        "title": "Google Maps Platform + Grounding Lite MCP vs Radar",
        "url": "https://www.anchorterminal.com/compare/google-maps-platform-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/here-location-services-vs-radar.json",
        "title": "HERE Location Services vs Radar",
        "url": "https://www.anchorterminal.com/compare/here-location-services-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/locationiq-vs-radar.json",
        "title": "LocationIQ vs Radar",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mapbox-vs-radar.json",
        "title": "Mapbox APIs + MCP vs Radar",
        "url": "https://www.anchorterminal.com/compare/mapbox-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mapquest-vs-radar.json",
        "title": "MapQuest vs Radar",
        "url": "https://www.anchorterminal.com/compare/mapquest-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/maptiler-vs-radar.json",
        "title": "MapTiler Cloud vs Radar",
        "url": "https://www.anchorterminal.com/compare/maptiler-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nominatim-vs-radar.json",
        "title": "Nominatim vs Radar",
        "url": "https://www.anchorterminal.com/compare/nominatim-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opencage-vs-radar.json",
        "title": "OpenCage Geocoding API vs Radar",
        "url": "https://www.anchorterminal.com/compare/opencage-vs-radar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/radar-vs-stadia-maps.json",
        "title": "Radar vs Stadia Maps",
        "url": "https://www.anchorterminal.com/compare/radar-vs-stadia-maps"
      },
      {
        "json": "https://www.anchorterminal.com/compare/radar-vs-tomtom.json",
        "title": "Radar vs TomTom Maps APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/radar-vs-tomtom"
      },
      {
        "json": "https://www.anchorterminal.com/compare/radar-vs-woosmap.json",
        "title": "Radar vs Woosmap",
        "url": "https://www.anchorterminal.com/compare/radar-vs-woosmap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nextbillion-vs-radar.json",
        "title": "NextBillion.ai vs Radar",
        "url": "https://www.anchorterminal.com/compare/nextbillion-vs-radar"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 0,
        "edge": "",
        "geocodio": 70,
        "key": "reliability",
        "name": "Reliability",
        "radar": 70,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 42,
        "edge": "geocodio",
        "geocodio": 92,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "radar": 50,
        "weight": 13
      },
      {
        "by": 15,
        "edge": "geocodio",
        "geocodio": 80,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "radar": 65,
        "weight": 13
      },
      {
        "by": 2,
        "edge": "geocodio",
        "geocodio": 58,
        "key": "security",
        "name": "Security \u0026 auth",
        "radar": 56,
        "weight": 14
      },
      {
        "by": 30,
        "edge": "geocodio",
        "geocodio": 40,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "radar": 10,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 9,
        "edge": "geocodio",
        "geocodio": 86,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "radar": 77,
        "weight": 7
      },
      {
        "by": 32,
        "edge": "geocodio",
        "geocodio": 87,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "radar": 55,
        "weight": 7
      }
    ],
    "summary": "Geocodio scores 72.2 (BB) on agent readiness against Radar's 53.3 (D), and leads in 6 of 7 scored categories. Both do geocoding.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "geocodio": "Geocodio publishes llms.txt, an AGENTS.md on cost and retries, an OpenAPI spec and a dated changelog, and its results may be stored permanently. Coverage stops at six countries, there's no MCP server or published SLA for self-serve plans, and the docs still put the key in the query string by default.",
      "radar": "Radar documents 38 REST operations in Markdown with a rate limit on each, and its status feed shows two API incidents of elevated errors or latency in 90 days. Access is sales-led. The pricing page says there is no free tier, every plan is an annual commitment, and no OpenAPI description or API changelog was found."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/geocodio-vs-radar",
    "json": "https://www.anchorterminal.com/compare/geocodio-vs-radar.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/geocodio-vs-radar.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/geocodio-vs-radar.min.md"
  },
  "markdown": "Geocodio scores 72.2 (BB) on agent readiness against Radar's 53.3 (D), and leads in 6 of 7 scored categories. Both do geocoding.\n\n- Geocodio: grade BB, 72.2/100, rank #138 of 1510. Markdown https://www.anchorterminal.com/tools/geocodio.md · JSON https://www.anchorterminal.com/api/v1/tools/geocodio.json\n- Radar: grade D, 53.3/100, rank #955 of 1510. Markdown https://www.anchorterminal.com/tools/radar.md · JSON https://www.anchorterminal.com/api/v1/tools/radar.json\n- Best maps, geocoding and places APIs for AI agents: https://www.anchorterminal.com/best/maps/index.md\n- All 153 maps comparisons: https://www.anchorterminal.com/compare/maps/index.md\n\n## Which one, for what\n\n### Geocodio (BB)\n\nGood for: Batch geocoding and district or census enrichment of addresses in the US, Canada, Mexico, the UK, Australia and New Zealand, where results must be stored.\n\nAhead on:\n- Schema \u0026 documentation, 92 against 50\n- Agent ergonomics, 80 against 65\n- Payments \u0026 pricing, 40 against 10\n- Maintenance \u0026 community, 86 against 77\n- Transparency \u0026 trust, 87 against 55\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Free to start without a card\n\nWatch for: Covers only the US, Canada, Mexico, the UK, Australia and New Zealand, and UK needs a Flex or Unlimited plan\n\n### Radar (D)\n\nGood for: A company that already has a Radar contract, or wants geofencing and trip tracking with geocoding and routing on one key.\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: The pricing page says Radar has no free tier and every plan is an annual commitment set by quote\n\n\n## Why the edge\n\n### Schema \u0026 documentation: Geocodio +42\n\n- Geocodio (92): OpenAPI 3.0.1 spec, version 2.1.0, with 11 paths (25). llms.txt and an AGENTS.md written for agents (10). llms.txt and AGENTS.md say when to use each endpoint and when not to, such as the Lists API over looping single calls, the upload tool for a one-off spreadsheet and straightline over driving distance unless road distance is needed (19). Typed parameters with country values, component fields and documented limits, though `fields` is a comma-separated string (12). Error table with retry guidance, examples throughout, but the spec documents 200, 400, 403, 404, 422 and 424 and not 429 or 500 (11). Versioned paths from v1 to v2.1 and a dated public changelog with entries back to 2024 (15). 25+10+19+12+11+15 = 92.\n- Radar (50): No OpenAPI description or other machine-readable contract was found in the docs index (0). docs.radar.com publishes llms.txt and a Markdown twin of each page, with the whole API reference in one Markdown file of about 154 KB (10). Descriptions say what an operation is for and sometimes when to use another, for example forward geocoding for complete addresses and autocomplete for partial ones (14). Parameters are listed with type, required or optional, ranges and allowed values, though coordinate lists travel as pipe-delimited strings and there is no schema to validate against (11). Every operation has a sample request and response, and there is one list of 12 response codes with one sample error (11). Paths carry `/v1`, and no API changelog was found (4). 0 + 10 + 14 + 11 + 11 + 4 = 50.\n\n### Transparency \u0026 trust: Geocodio +32\n\n- Geocodio (87): Editorial half only. Closed service with clear, dated terms under Virginia law, and libraries and CLI under MIT (20). The privacy policy says API and spreadsheet input and results are deleted within 45 days, error logs kept 90 days, and customer data isn't used to train AI models. A separate data retention policy and llms.txt put Lists API data at 72 hours. Results may be stored permanently by the customer (27). Replaced API versions are guaranteed for at least 12 months, breaking changes come only with a new version, and the changelog marks each one 'Breaking' (18). The privacy policy names its processors, such as Sentry and Laravel Nightwatch, and the security page says self-serve is hosted in Europe (15). 20+27+18+15 = 80.\n- Radar (55): Closed service with public Terms of Use, and an Apache-2.0 web SDK. The terms date from 24 May 2023, describe a free version the pricing page says does not exist, and paid plans run on a quoted agreement that is not published (12). The privacy notice of 13 May 2025, a public DPA and the FAQ agree on a default retention of 1 year, with 90 days for trips and 7 days for location updates in the FAQ. The privacy notice itself gives no period (22). No deprecation policy was found, and the terms let Radar change or stop the services without notice. One parameter (`userId` on geofences) is marked deprecated with no date (2). The DPA names AWS and MongoDB as sub-processors, and the privacy notice says hosting is in the United States (15). 12 + 22 + 2 + 15 = 51. The privacy notice and DPA weren't re-read on 4 November, so their readings are per the 9 October check.\n\n### Payments \u0026 pricing: Geocodio +30\n\n- Geocodio (40): No x402, MPP or L402 (0). $1 per 1,000 lookups after the free tier, and per-credit rates for every Flex tier, public without login (20). 2,500 lookups a day free with no card until usage passes the free tier (20). Signup and key creation are a browser flow at dash.geocod.io (0). 0+20+20+0 = 40.\n- Radar (10): No x402, MPP or L402 (0). The pricing page publishes starting prices without a login, $0.50 per 1,000 calls for Core Maps and $2.00 for Premium Maps, but every plan is an annual commitment at a rate set by quote (10). The pricing page says \"Radar does not currently offer a free tier\", and the technical validation period goes through sales (0). Keys come from a dashboard account, and the sign-up page was closed to us by robots.txt on 9 October, so no programmatic route was found (0). 0 + 10 + 0 + 0 = 10.\n\n### Agent ergonomics: Geocodio +15\n\n- Geocodio (80): API reading. `limit`, opt-in `fields` appends and `stable_address_key` re-lookups size responses and cost, and results are ordered best first (20). Batches of 10,000 lookups, Lists for 10 million, distance filters (max_distance, max_results, order_by) and paginated list listings (17). Codes 403, 422, 429 and 500 each carry a documented meaning and retry rule, error bodies link a help page, and `_warnings` reports ignored parameters (18). Geocoding reads are safe to retry, but there's no idempotency key on batch or list creation and AGENTS.md says a retried request is billed again (10). One required parameter on a single geocode, and official libraries for Python, Node, PHP and Ruby plus a CLI with `--agent` output (15). 20+17+18+10+15 = 80.\n- Radar (65): Read as an API. `limit` on search operations (1 to 100), `layers` and `country` filters on geocoding, and optional `geometry` on route optimisation size a response, with no field selection (14). List operations page with `limit` up to 1,000 and date cursors such as `updatedBefore` (16). Errors are JSON with `code`, `param` and `message`, and every response carries `X-Radar-Request-ID` (15). The maps operations only read. Geofence and beacon writes are PUT upserts by external ID, and no idempotency key was found for trip or user creation (10). Most maps calls need one parameter. Official SDKs cover web, iOS, Android and five cross-platform frameworks, all client-side, with no server library found (10). 14 + 16 + 15 + 10 + 10 = 65.\n\n### Maintenance \u0026 community: Geocodio +9\n\n- Geocodio (86): API v2.1 released 3 November 2026 (Australia and New Zealand), and PHP library 3.4.1 on 4 November (30). Dated changelog entries on 8 September, 1, 8, 9, 19, 22 and 31 October and 3 November 2026, plus library releases in October (20). Public changelog, support by email and a team-staffed help desk named on the pricing page. We didn't read GitHub issue reply times (12). Official Python 1.6.0 and Node 2.3.0 from 12 October and PHP 3.4.1 from 4 November are current (15). Each library and the CLI run CI on GitHub Actions; we didn't check whether the runs pass (9). 30+20+12+15+9 = 86.\n- Radar (77): No API changelog was found, so recency rests on Radar's own SDKs. radar-sdk-android 4.2.0 on 29 October and radar-sdk-ios 3.45.0 on 27 October 2026, and in the listed web SDK, maps-v1.2.0 on 13 October (a MapLibre upgrade with changes to RadarMap.ts and RadarMarker.ts), all within 30 days (30). Stable tags in the 90 days from 6 August include web v5.1.2 (25 August), v5.1.3 (31 August), v5.2.0 (1 September), autocomplete-v1.1.1 (14 September) and maps-v1.2.0, iOS 3.40.0 to 3.45.0 and Android 3.37.0 to 4.2.0; betas aren't counted (20). No public changelog for the API, support through a customer success manager and a feedback form, and GitHub issue replies were not read (5). Official SDKs for eight platforms are current (15). The web SDK repository carries Jest tests and CodeQL and npm publish workflows, whose results were not read (7). 30 + 20 + 5 + 15 + 7 = 77.\n\n## Score by category\n\n| Category | Weight | Geocodio | Radar | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 70 | 70 | even |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 92 | 50 | Geocodio +42 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 65 | Geocodio +15 |\n| Security \u0026 auth | 14% (17.5 this run) | 58 | 56 | Geocodio +2 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 10 | Geocodio +30 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 86 | 77 | Geocodio +9 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 87 | 55 | Geocodio +32 |\n| Negative events | ≤15 | 0 | -2 | |\n| **Total** | | **72.2 · BB** | **53.3 · D** | |\n\n## Facts side by side\n\n| Fact | Geocodio | Radar |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Dotsquare LLC | Radar Labs |\n| Hosted endpoint | no (local only) | `https://api.radar.io/v1` |\n| Transports | HTTP | HTTP |\n| Auth | API key | API key |\n| Pricing | Freemium | Paid |\n| Price for geocoding | $1600 per month (plan) | not published |\n| x402 | no | no |\n| Licence | none | Proprietary service under Radar's Terms of Use. The web SDK in radarlabs/radar-sdk-js is Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-11-03 | 2026-10-13 |\n| Terms last updated | no date given | 2023-05-24 |\n| Privacy policy last updated | 2018-05-25 | 2025-05-13 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | yes | yes |\n| Terms or service can change without notice | yes | yes |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | 21k npm/wk, 921 PyPI/wk | none |\n\n## Verdicts\n\n**Geocodio.** Geocodio publishes llms.txt, an AGENTS.md on cost and retries, an OpenAPI spec and a dated changelog, and its results may be stored permanently. Coverage stops at six countries, there's no MCP server or published SLA for self-serve plans, and the docs still put the key in the query string by default.\n\n**Radar.** Radar documents 38 REST operations in Markdown with a rate limit on each, and its status feed shows two API incidents of elevated errors or latency in 90 days. Access is sales-led. The pricing page says there is no free tier, every plan is an annual commitment, and no OpenAPI description or API changelog was found.\n\n## Before you call either\n\n### Geocodio\n\n1. Always set `country`, because an address with none falls back to the US and is billed even when it's wrong\n2. Send the key as `Authorization: Bearer`, not in the query string, so it stays out of logs\n3. Use batch POST /geocode (up to 10,000 lookups) or the Lists API rather than looping single requests\n4. Treat accuracy_type place, county or state as not found, and check `_warnings` for appends that were billed but skipped\n5. Don't retry 403 or 422. On 429 read X-RateLimit headers and back off, and never re-upload a list sitting in ENQUEUED\n\n### Radar\n\n1. Send the key in the `Authorization` header with no `Bearer` prefix, and call `https://api.radar.io/v1`, not radar.com\n2. Use a publishable key for geocoding, search and routing. Keep the secret key for users, trips, geofences and beacons\n3. Call `/v1/search/autocomplete` for partial addresses and place names. `/v1/geocode/forward` is documented as best for complete addresses\n4. Set `units=metric` on routing calls. The default is imperial, with distances in feet\n5. Treat 429 as one of three things (rate limit, no state change or selective throttling) and 402 as usage exceeded. No Retry-After header is documented\n6. Do not keep geocoding, autocomplete or place results for more than 30 days\n\n## Questions\n\n### Which is better for AI agents, Geocodio or Radar?\n\nGeocodio scores 72.2 (BB) on agent readiness against Radar's 53.3 (D), and leads in 6 of 7 scored categories.\n\n### Do Geocodio and Radar need an API key?\n\nBoth need an API key.\n\n### Can an agent call Geocodio and Radar without installing anything?\n\nNo hosted endpoint is listed for Geocodio. Radar has a hosted endpoint at https://api.radar.io/v1.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/geocodio-vs-radar.json, and with the fewest tokens: https://www.anchorterminal.com/compare/geocodio-vs-radar.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"geocodio\", \"b\": \"radar\"}`. From a terminal: `anchor compare geocodio radar`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/geocodio.json and https://www.anchorterminal.com/api/v1/tools/radar.json\n\n## Other comparisons with Geocodio or Radar\n\n- [Amazon Location Service vs Geocodio](https://www.anchorterminal.com/compare/amazon-location-vs-geocodio.md)\n- [Amazon Location Service vs Radar](https://www.anchorterminal.com/compare/amazon-location-vs-radar.md)\n- [ArcGIS Location Platform vs Geocodio](https://www.anchorterminal.com/compare/arcgis-vs-geocodio.md)\n- [ArcGIS Location Platform vs Radar](https://www.anchorterminal.com/compare/arcgis-vs-radar.md)\n- [Azure Maps vs Geocodio](https://www.anchorterminal.com/compare/azure-maps-vs-geocodio.md)\n- [Azure Maps vs Radar](https://www.anchorterminal.com/compare/azure-maps-vs-radar.md)\n- [Geoapify Location Platform + MCP vs Geocodio](https://www.anchorterminal.com/compare/geoapify-vs-geocodio.md)\n- [Geoapify Location Platform + MCP vs Radar](https://www.anchorterminal.com/compare/geoapify-vs-radar.md)\n- [Geocodio vs Google Maps Platform + Grounding Lite MCP](https://www.anchorterminal.com/compare/geocodio-vs-google-maps-platform.md)\n- [Geocodio vs HERE Location Services](https://www.anchorterminal.com/compare/geocodio-vs-here-location-services.md)\n- [Geocodio vs LocationIQ](https://www.anchorterminal.com/compare/geocodio-vs-locationiq.md)\n- [Geocodio vs Mapbox APIs + MCP](https://www.anchorterminal.com/compare/geocodio-vs-mapbox.md)\n- [Geocodio vs MapQuest](https://www.anchorterminal.com/compare/geocodio-vs-mapquest.md)\n- [Geocodio vs MapTiler Cloud](https://www.anchorterminal.com/compare/geocodio-vs-maptiler.md)\n- [Geocodio vs NextBillion.ai](https://www.anchorterminal.com/compare/geocodio-vs-nextbillion.md)\n- [Geocodio vs Nominatim](https://www.anchorterminal.com/compare/geocodio-vs-nominatim.md)\n- [Geocodio vs OpenCage Geocoding API](https://www.anchorterminal.com/compare/geocodio-vs-opencage.md)\n- [Geocodio vs Stadia Maps](https://www.anchorterminal.com/compare/geocodio-vs-stadia-maps.md)\n- [Geocodio vs TomTom Maps APIs + MCP](https://www.anchorterminal.com/compare/geocodio-vs-tomtom.md)\n- [Geocodio vs Woosmap](https://www.anchorterminal.com/compare/geocodio-vs-woosmap.md)\n- [Google Maps Platform + Grounding Lite MCP vs Radar](https://www.anchorterminal.com/compare/google-maps-platform-vs-radar.md)\n- [HERE Location Services vs Radar](https://www.anchorterminal.com/compare/here-location-services-vs-radar.md)\n- [LocationIQ vs Radar](https://www.anchorterminal.com/compare/locationiq-vs-radar.md)\n- [Mapbox APIs + MCP vs Radar](https://www.anchorterminal.com/compare/mapbox-vs-radar.md)\n- [MapQuest vs Radar](https://www.anchorterminal.com/compare/mapquest-vs-radar.md)\n- [MapTiler Cloud vs Radar](https://www.anchorterminal.com/compare/maptiler-vs-radar.md)\n- [Nominatim vs Radar](https://www.anchorterminal.com/compare/nominatim-vs-radar.md)\n- [OpenCage Geocoding API vs Radar](https://www.anchorterminal.com/compare/opencage-vs-radar.md)\n- [Radar vs Stadia Maps](https://www.anchorterminal.com/compare/radar-vs-stadia-maps.md)\n- [Radar vs TomTom Maps APIs + MCP](https://www.anchorterminal.com/compare/radar-vs-tomtom.md)\n- [Radar vs Woosmap](https://www.anchorterminal.com/compare/radar-vs-woosmap.md)\n- [NextBillion.ai vs Radar](https://www.anchorterminal.com/compare/nextbillion-vs-radar.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Geocodio vs Radar",
        "url": ""
      }
    ],
    "description": "Geocodio scores 72.2 (BB) to Radar's 53.3 (D) for geocoding. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Geocodio BB 72.2",
      "Radar D 53.3",
      "scores"
    ],
    "h1": "Geocodio vs Radar",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/geocodio-vs-radar",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Geocodio vs Radar for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/geocodio-vs-radar"
  },
  "tokens": {
    "markdown": 4400,
    "slim": 2430
  },
  "version": 1
}
