{
  "data": {
    "a": {
      "slug": "locationiq",
      "name": "LocationIQ",
      "vendor": "LocationIQ (Unwired Labs)",
      "vendorUrl": "https://locationiq.com",
      "kind": "http-api",
      "category": "maps",
      "summary": "Forward and reverse geocoding, autocomplete, nearby places, directions, matrix and map tiles, from US and EU endpoints.",
      "url": "https://www.anchorterminal.com/tools/locationiq",
      "markdownUrl": "https://www.anchorterminal.com/tools/locationiq.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/locationiq.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/locationiq.json",
      "dns": "locationiq.grade.anchorterminal.com",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://us1.locationiq.com/v1",
      "packages": [],
      "auth": "api-key",
      "authNotes": "Access token passed as the key query parameter. Same API on us1.locationiq.com and eu1.locationiq.com.",
      "pricing": "freemium",
      "pricingNotes": "Free 5,000 requests a day at 2 a second, no card, with a prominent link back required. Maps Lite $45 a month (10,000 a day, maps only), Developer $100 (25,000 a day, all APIs), Startup $200 (60,000 a day), Growth Plus $500 (7.5 million a month), Business Plus $950 (30 million a month), Enterprise custom. Paid plans need a card (https://locationiq.com/pricing).",
      "priceSummary": "$100 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.locationiq.com",
      "llmsTxt": "https://docs.locationiq.com/llms.txt",
      "openapi": "https://docs.locationiq.com/openapi.yaml",
      "capabilities": [
        "geo.geocode",
        "geo.reverse",
        "geo.places",
        "geo.routing",
        "geo.tiles"
      ],
      "tags": [
        "hosted",
        "llms-txt",
        "free-tier",
        "no-card",
        "eu",
        "closed-source"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 60.3,
        "grade": "C",
        "agentReady": false,
        "rank": 658,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 11,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 3,
          "payments": 30,
          "reliability": 83,
          "schema": 78,
          "security": 55,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-04"
        },
        "negative": 0,
        "verdict": "5,000 free requests a day with no card, commercial use allowed with a link back. No changelog, release notes or blog.",
        "bestFor": "A prototype or a cost-sensitive geocoding and routing job, with EU and US endpoints.",
        "strengths": [
          "5,000 free requests a day with no card, commercial use allowed with a link back",
          "Public OpenAPI 3.0 spec and an llms.txt with Markdown pages",
          "Scoped tokens with referrer or IP restrictions and per-token rate limits",
          "No incidents posted between 2 April and 1 October 2026 on the status page, with history back to 2018",
          "Error messages that separate per-second, per-minute and per-day limits"
        ],
        "weaknesses": [
          "No changelog, release notes or blog",
          "Official SDKs untouched since 2020",
          "No MCP server",
          "Key only in the query string",
          "Free plan must delete cached results after 48 hours and gets a single token"
        ],
        "agentNotes": [
          "Use eu1.locationiq.com for European users or data",
          "Add format=json and limit=1 to keep responses small",
          "On 429 Rate Limited Second wait a second, on Rate Limited Day stop until the next day",
          "Call /balance before a large batch to see what's left of the day's quota",
          "Redact the key parameter before logging request URLs"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 4.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 60.3
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 3,
          "payments": 30,
          "reliability": 83,
          "schema": 78,
          "security": 55,
          "transparency": 40
        },
        "provenanceScore": 82,
        "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",
          "lastMoved": "2026-10-08",
          "oldest": "2026-11-04",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl \"https://eu1.locationiq.com/v1/search?key=$LOCATIONIQ_API_KEY\u0026q=10%20Downing%20Street%2C%20London\u0026format=json\u0026limit=1\""
      },
      "letme": {
        "capability": "https://letme.dev/geo.geocode",
        "tool": "https://letme.dev/locationiq"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Developer plan",
          "unit": "month",
          "usd": 100,
          "note": "25,000 requests a day, 20 a second, all APIs"
        },
        {
          "item": "Startup plan",
          "unit": "month",
          "usd": 200,
          "note": "60,000 requests a day, 22 a second"
        },
        {
          "item": "Growth Plus plan",
          "unit": "month",
          "usd": 500,
          "note": "7.5 million requests a month, 30 a second"
        },
        {
          "item": "Business Plus plan",
          "unit": "month",
          "usd": 950,
          "note": "30 million requests a month, 40 a second"
        }
      ],
      "provenance": {
        "legalEntity": "Unwired Labs (India) Pvt Ltd",
        "domain": "locationiq.com",
        "domainRegistered": "2005-09-20",
        "endpointOnVendorDomain": true,
        "terms": "https://locationiq.com/tos",
        "privacy": "https://locationiq.com/privacy",
        "statusPage": "https://status.locationiq.com",
        "changelog": "",
        "securityTxt": "valid",
        "checked": "2026-11-04",
        "notes": [
          "The terms were last updated 31 March 2026 (re-read on 4 November).",
          "security.txt lists hello@locationiq.com and expires 2028-01-01 (re-read on 4 November).",
          "LocationIQ's own privacy policy is at locationiq.com/privacy, last updated 22 May 2020. The parent's page at unwiredlabs.com/privacy embeds a Google Doc our reader couldn't see.",
          "The status page's RSS feed held 74 incidents from March 2018 to 2 April 2026 on 1 October. On 4 November status.locationiq.com answered robots.txt with its app page, so it wasn't read.",
          "We found no changelog or blog."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/locationiq.json",
      "live": {
        "slug": "locationiq",
        "probe": {
          "target": "https://us1.locationiq.com/v1",
          "method": "get",
          "lastAt": "2026-11-07T19:22:17.032606045Z",
          "lastOk": true,
          "lastStatus": 403,
          "lastMs": 343,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 238,
          "p95ms24h": 430,
          "samples24h": 238,
          "samples30d": 7920,
          "days": [
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "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": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 248,
              "ok": 248
            },
            {
              "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": 248
            },
            {
              "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
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.locationiq.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:48:00.589936264Z"
        },
        "securityTxt": {
          "url": "https://locationiq.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2028-01-01T00:00:00Z",
          "checkedAt": "2026-11-07T16:01:08.426296864Z"
        },
        "llmsTxt": {
          "url": "https://docs.locationiq.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:54.459912203Z"
        },
        "domain": {
          "domain": "locationiq.com",
          "registered": "2005-09-20",
          "source": "https://rdap.verisign.com/com/v1/domain/locationiq.com",
          "checkedAt": "2026-11-01T14:12:18.326873505Z"
        },
        "pages": [
          {
            "url": "https://locationiq.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:13:26.63045639Z",
            "changedAt": "2026-10-24T02:20:44.840309825Z",
            "fingerprint": "aaab3bd9280a"
          },
          {
            "url": "https://locationiq.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:13:28.786968548Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "f99922f73f1e"
          },
          {
            "url": "https://locationiq.com/tos",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:13:30.695378865Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "13f087788a40"
          }
        ],
        "updatedAt": "2026-11-07T19:22:17.032606045Z"
      }
    },
    "answer": "MapTiler Cloud scores 62.1 (B) on agent readiness against LocationIQ's 60.3 (C), and leads in 5 of 7 scored categories. LocationIQ leads on reliability.",
    "b": {
      "slug": "maptiler",
      "name": "MapTiler Cloud",
      "vendor": "MapTiler AG",
      "vendorUrl": "https://www.maptiler.com",
      "kind": "http-api",
      "category": "maps",
      "summary": "MapTiler Cloud is a hosted maps platform from MapTiler AG in Switzerland. Its read-only REST APIs serve map styles, vector and raster tiles, static maps, forward and reverse geocoding, IP geolocation, elevation, coordinate transforms and weather data.",
      "url": "https://www.anchorterminal.com/tools/maptiler",
      "markdownUrl": "https://www.anchorterminal.com/tools/maptiler.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/maptiler.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/maptiler.json",
      "dns": "maptiler.grade.anchorterminal.com",
      "repo": "https://github.com/maptiler/maptiler-client-js",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@maptiler/client"
        },
        {
          "registry": "npm",
          "name": "@maptiler/sdk"
        }
      ],
      "auth": "api-key",
      "authNotes": "API key from the MapTiler Cloud account after a browser signup, always passed as the `key` query parameter. Keys can be limited to HTTP origins and a User-Agent substring and are managed through the Service API. From a backend, a service token can sign each request with a `signature` parameter instead. The Service API (uploads, tilesets, keys, analytics) needs a service token.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 100,000 API requests, 5,000 sessions and 1,000 search sessions a month, no card, for testing and non-commercial use; service pauses at the limit. Flex is $30 a month with 500,000 requests, then $0.15 per 1,000 requests and $2.50 per 1,000 search sessions. Custom contracts carry a 99.9% SLA.",
      "priceSummary": "$0.15 / 1k req",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API reference, OpenAPI spec, llms.txt or pricing page (checked 2026-11-06). Paid plans are billed by FastSpring.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 114682,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.maptiler.com/cloud/api/",
      "llmsTxt": "https://docs.maptiler.com/llms.txt",
      "openapi": "https://docs.maptiler.com/_data/cloud/api/openapi.yml",
      "capabilities": [
        "geo.geocode",
        "geo.reverse",
        "geo.places",
        "geo.tiles",
        "data.weather"
      ],
      "tags": [
        "hosted",
        "api-key",
        "freemium",
        "free-tier",
        "no-card",
        "llms-txt",
        "openapi",
        "official",
        "agent-skills",
        "typescript",
        "status-page",
        "security-txt",
        "iso27001",
        "eu",
        "eu-region",
        "sla",
        "closed-source"
      ],
      "lastRelease": "2026-10-02",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62.1,
        "grade": "B",
        "agentReady": false,
        "rank": 576,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 10,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 70,
          "maintenance": 70,
          "payments": 40,
          "reliability": 43,
          "schema": 79,
          "security": 64,
          "transparency": 80
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "MapTiler Cloud has an OpenAPI 3.1 reference, llms.txt with Markdown pages, an agent skill and ISO 27001 certification, and allows geocoding results to be stored. The key always travels in the query string, there's no routing API, no documented rate limit or 429 handling, and the free plan excludes commercial use.",
        "bestFor": "Map tiles, static maps and worldwide geocoding with storable results for apps that also show a map, with EU data residency.",
        "strengths": [
          "OpenAPI 3.1.0 spec, llms.txt, llms-full.txt and a Markdown version of every docs page",
          "Geocoding results may be bulk downloaded and used outside the service with attribution",
          "Keys can be restricted by origin and User-Agent, and service tokens can sign requests instead",
          "ISO/IEC 27001:2022 certification, security.txt and a vulnerability disclosure policy",
          "EU-only endpoint at api.maptiler.eu and hosting mainly in Switzerland and the EEA"
        ],
        "weaknesses": [
          "The API key is always sent as a query parameter",
          "No routing, directions or matrix API",
          "No per-second rate limit, 429 behaviour or retry guidance found in the documentation",
          "The free plan is for testing and non-commercial use only, and pauses at its monthly limit",
          "Official clients are JavaScript and TypeScript only"
        ],
        "agentNotes": [
          "Restrict the key to an origin or User-Agent, or sign requests with a service token from a backend, since the key appears in every URL",
          "Use the batch geocoding path (up to 50 semicolon-separated queries) rather than one call per address",
          "Use api.maptiler.eu when the user's requests must stay in the EU",
          "Read docs pages as Markdown by appending .md, starting from https://docs.maptiler.com/llms.txt",
          "Don't cache map tiles server-side; the Cloud terms forbid it, though geocoding results may be stored with attribution"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.1
          }
        ],
        "editorialScores": {
          "ergonomics": 70,
          "maintenance": 70,
          "payments": 40,
          "reliability": 43,
          "schema": 79,
          "security": 64,
          "transparency": 64
        },
        "provenanceScore": 96,
        "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": "npm install @maptiler/client",
        "http": "curl \"https://api.maptiler.com/geocoding/Zurich.json?language=en\u0026limit=3\u0026key=$MAPTILER_API_KEY\""
      },
      "letme": {
        "capability": "https://letme.dev/geo.geocode",
        "tool": "https://letme.dev/maptiler"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "API requests over the Flex allowance",
          "unit": "1k-requests",
          "usd": 0.15,
          "note": "Flex includes 500,000 a month"
        },
        {
          "item": "Search sessions over the Flex allowance",
          "unit": "1k-requests",
          "usd": 2.5,
          "note": "Priced per 1,000 search sessions through MapTiler SDK JS"
        },
        {
          "item": "Flex plan",
          "unit": "month",
          "usd": 30,
          "note": "Extra usage billed monthly"
        }
      ],
      "provenance": {
        "legalEntity": "MapTiler AG",
        "domain": "maptiler.com",
        "domainRegistered": "2008-08-08",
        "endpointOnVendorDomain": true,
        "terms": "https://www.maptiler.com/terms/",
        "privacy": "https://www.maptiler.com/privacy-policy/",
        "statusPage": "https://status.maptiler.com",
        "changelog": "https://docs.maptiler.com/updates/",
        "securityTxt": "valid",
        "checked": "2026-11-06",
        "notes": [
          "The general terms name MapTiler AG, Zugerstrasse 22, 6314 Unterägeri, Switzerland, under Swiss law with courts in Zug.",
          "security.txt at www.maptiler.com/.well-known/security.txt names sysadmin@maptiler.com, a PGP key and a signature, and has no Expires field.",
          "status.maptiler.com is a StatusCake public report whose data loads from app.statuscake.com. That host's robots.txt answered with a redirect, so it wasn't fetched and no uptime or incident history was read.",
          "RDAP gives maptiler.com a registration date of 8 August 2008.",
          "No clause on automated access to the website was found in the general terms. robots.txt on www.maptiler.com and docs.maptiler.com allows all agents apart from a few paths."
        ],
        "score": 96
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/maptiler.json",
      "live": {
        "slug": "maptiler",
        "vendorStatus": {
          "page": "https://status.maptiler.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:48:02.124798696Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "maptiler/maptiler-client-js",
            "version": "v3.1.0",
            "released": "2026-10-02",
            "seenAt": "2026-11-06T23:42:38.646681081Z"
          },
          {
            "registry": "npm",
            "name": "@maptiler/client",
            "version": "3.1.0",
            "seenAt": "2026-11-06T23:42:36.419318643Z"
          },
          {
            "registry": "npm",
            "name": "@maptiler/sdk",
            "version": "4.2.1",
            "seenAt": "2026-11-06T23:42:37.315182633Z"
          }
        ],
        "githubStars": 25,
        "npmWeekly": 114682,
        "securityTxt": {
          "url": "https://maptiler.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-11-07T15:59:35.51300876Z"
        },
        "llmsTxt": {
          "url": "https://docs.maptiler.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:57.151624353Z"
        },
        "pages": [
          {
            "url": "https://docs.maptiler.com/updates/",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:06:56.724195464Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1152e8fe8b9d"
          },
          {
            "url": "https://www.maptiler.com/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:31:21.154658791Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "46d3f1544780"
          },
          {
            "url": "https://www.maptiler.com/terms/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:31:23.29013826Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "fc740f21aa9f"
          }
        ],
        "updatedAt": "2026-11-07T15:59:35.51300876Z"
      }
    },
    "edges": [
      {
        "by": 67,
        "category": "maintenance",
        "leads": "maptiler",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "We found no changelog, release notes or blog on 4 November (docs.locationiq.com/changelog, locationiq.com/changelog and locationiq.com/blog all return 404, and llms.txt lists none), so there's no dated API change to count. The terms were updated 31 March 2026, which isn't an API change (0). No dated entries in the last 90 days (0). No public changelog. Support is by email, which we didn't test (3). The official Python client hasn't changed since 30 March 2020 (0). Nothing current to judge package health by (0). The status page shows the service is run and watched, which this checklist doesn't capture. 0+0+3+0+0 = 3.",
          "b": "@maptiler/client 3.1.0 and @maptiler/sdk 4.2.0 on 2 October 2026, 35 days before this check, with the agent skill updated on 21 October (20). Platform updates entries for August (EU endpoint, key security) and September 2026 (terrain blending) plus the two October releases (20). A Discord community and support answered on a best-effort basis within two business days, per the Cloud terms. We didn't read GitHub issues (10). Official JavaScript client and SDK current, no Python client (12). The SDK repository runs unit and end-to-end tests in CI; we didn't check results (8). 20+20+10+12+8 = 70."
        },
        "scores": {
          "a": 3,
          "b": 70
        }
      },
      {
        "by": 40,
        "category": "reliability",
        "leads": "locationiq",
        "name": "Reliability",
        "reasons": {
          "a": "status.locationiq.com lists 15 components by data centre (geocoding, autocomplete, maps and routing in Europe, US East, US West and Asia Pacific) with RSS and Atom history back to March 2018, 74 incidents in all, per the 1 October check (20). The newest incident then was 'Network Issues' on 2 April 2026, so 6 August to 1 October was clean. On 4 November the status host answered robots.txt with its app page, so nothing more was requested there, 2 October to 4 November is unread, and the line is held at what the read part supports (30). Per-second and daily limits for every plan, and per-token and per-IP limits on top, with soft daily limits of up to 100% more on paid plans (15). Three distinct 429 messages, Rate Limited Second, Minute and Day, and a 500 that says to retry after a short wait, but no Retry-After or backoff guidance (8). No SLA. The pricing page lists custom SLAs only on its top plan and points to public uptime instead (0). GA (10). 20+30+15+8+0+10 = 83.",
          "b": "Hosted lines. status.maptiler.com is a StatusCake public uptime report rather than a component incident page (15). Its data loads from app.statuscake.com, whose robots.txt answered with a redirect, so we didn't fetch it and read no history. That's our limit, not a finding, and the rubric gives 5 (5). Monthly request and session quotas are published per plan, but no per-second limit (5). No 429, Retry-After or backoff guidance found in the API reference, the OpenAPI spec or llms-full.txt (0). The pricing page lists a 99.9% SLA on the Custom plan, while the Cloud terms call availability best effort and point to a custom SLA (8). The public APIs are GA (10). 15+5+5+0+8+10 = 43."
        },
        "scores": {
          "a": 83,
          "b": 43
        }
      },
      {
        "by": 19,
        "category": "transparency",
        "leads": "maptiler",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed service with readable terms, updated 31 March 2026, under the laws of Telangana, India (15). The terms are specific on storage, 48 hours on Free and for as long as you're a customer on paid plans, with no server-side tile caching. The privacy policy at locationiq.com/privacy was last updated 22 May 2020, says IP addresses are stored to check for abuse with no retention period, and links a DPA (15). No deprecation policy or notices found (0). Stripe, Zoho and Google Analytics named without locations. Data centre regions are visible on the status page, not in the policy (10).",
          "b": "Editorial half only. Closed service with general and Cloud-specific terms under Swiss law, and SDKs under BSD 3-Clause and the skill under MIT (20). The privacy policy covers account and payment data and says legal-claim data is kept up to 10 years, but says nothing about how long API request logs are kept (15). A dated deprecation page for v3 maps and migration guides, with no written notice period (12). Hosting with OVHcloud and Google Firebase, data mainly in Switzerland and the EEA, and an EU-only endpoint. Google Analytics, Firebase and FastSpring named in the privacy policy (17). 20+15+12+17 = 64."
        },
        "scores": {
          "a": 61,
          "b": 80
        }
      },
      {
        "by": 10,
        "category": "payments",
        "leads": "maptiler",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0). Public plan prices with daily or monthly quotas, but no per-request price or overage rate, since requests over quota are refused (10). Free plan of 5,000 requests a day with no card, and commercial use allowed with a prominent link back (20). Signup is a browser flow (0).",
          "b": "No x402, MPP or L402 (0). Per-1,000 prices for requests ($0.15) and sessions ($2.50) public without login (20). Free plan with no card, though only for testing and non-commercial use (20). Signup is a browser flow (0). 0+20+20+0 = 40."
        },
        "scores": {
          "a": 30,
          "b": 40
        }
      },
      {
        "by": 9,
        "category": "security",
        "leads": "maptiler",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Separate tokens per application, each with scopes, HTTP referrer or IP restrictions (up to 5 CIDRs), its own rate limits, and rotation from the dashboard, which earns 30. Less 10 because the OpenAPI spec defines only the key query parameter. The free plan gets one token (20). Scopes and per-token limits give least privilege, and nothing writes (17). Results are OpenStreetMap-derived text with no prompt-injection guidance (7). The /balance endpoint shows remaining quota. We didn't check per-call logs (4). security.txt valid to 1 January 2028, re-read on 4 November, pointing to hello@locationiq.com. No bug bounty or certification found (7).",
          "b": "Revocable keys that can be limited to origins and a User-Agent substring and managed by the API keys API, and service tokens that sign requests so the token itself never travels, which earns 27. Less 10 because the key is 'always passed as a query parameter' (17). The public APIs are read-only, and account changes need a separate service token (16). Geocoding returns OpenStreetMap names and addresses, community-edited text, with no prompt-injection guidance (7). An Analytics API and account usage statistics (8). security.txt, a vulnerability disclosure policy and ISO/IEC 27001:2022 certification per the security page. No bug bounty found (16). 17+16+7+8+16 = 64."
        },
        "scores": {
          "a": 55,
          "b": 64
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "LocationIQ (Unwired Labs)",
        "b": "MapTiler AG",
        "name": "Vendor"
      },
      {
        "a": "https://us1.locationiq.com/v1",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "none",
        "b": "2026-10-02",
        "name": "Last release"
      },
      {
        "a": "2026-03-31",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2020-05-22",
        "b": "no date given",
        "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": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "115k npm/wk",
        "name": "Popularity"
      },
      {
        "a": "4.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "MapTiler Cloud scores 62.1 (B) on agent readiness against LocationIQ's 60.3 (C), and leads in 5 of 7 scored categories. LocationIQ leads on reliability.",
        "question": "Which is better for AI agents, LocationIQ or MapTiler Cloud?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do LocationIQ and MapTiler Cloud need an API key?"
      },
      {
        "answer": "LocationIQ has a hosted endpoint at https://us1.locationiq.com/v1. No hosted endpoint is listed for MapTiler Cloud.",
        "question": "Can an agent call LocationIQ and MapTiler Cloud without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 83 against 43"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "A prototype or a cost-sensitive geocoding and routing job, with EU and US endpoints.",
        "slug": "locationiq",
        "watchFor": "No changelog, release notes or blog"
      },
      {
        "aheadOn": [
          "Security \u0026 auth, 64 against 55",
          "Payments \u0026 pricing, 40 against 30",
          "Maintenance \u0026 community, 70 against 3",
          "Transparency \u0026 trust, 80 against 61"
        ],
        "also": null,
        "goodFor": "Map tiles, static maps and worldwide geocoding with storable results for apps that also show a map, with EU data residency.",
        "slug": "maptiler",
        "watchFor": "The API key is always sent as a query parameter"
      }
    ],
    "history": {
      "locationiq": [
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.3,
          "from": 60.6,
          "fromGrade": "C",
          "to": 60.3,
          "toGrade": "C"
        }
      ],
      "maptiler": null
    },
    "job": {
      "capability": "geo.geocode",
      "name": "Geocoding"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-location-vs-locationiq.json",
        "title": "Amazon Location Service vs LocationIQ",
        "url": "https://www.anchorterminal.com/compare/amazon-location-vs-locationiq"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-location-vs-maptiler.json",
        "title": "Amazon Location Service vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/amazon-location-vs-maptiler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcgis-vs-locationiq.json",
        "title": "ArcGIS Location Platform vs LocationIQ",
        "url": "https://www.anchorterminal.com/compare/arcgis-vs-locationiq"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcgis-vs-maptiler.json",
        "title": "ArcGIS Location Platform vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/arcgis-vs-maptiler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-locationiq.json",
        "title": "Azure Maps vs LocationIQ",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-locationiq"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-maptiler.json",
        "title": "Azure Maps vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-maptiler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geoapify-vs-locationiq.json",
        "title": "Geoapify Location Platform + MCP vs LocationIQ",
        "url": "https://www.anchorterminal.com/compare/geoapify-vs-locationiq"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geoapify-vs-maptiler.json",
        "title": "Geoapify Location Platform + MCP vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/geoapify-vs-maptiler"
      },
      {
        "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-maptiler.json",
        "title": "Geocodio vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/geocodio-vs-maptiler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-maps-platform-vs-locationiq.json",
        "title": "Google Maps Platform + Grounding Lite MCP vs LocationIQ",
        "url": "https://www.anchorterminal.com/compare/google-maps-platform-vs-locationiq"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-maps-platform-vs-maptiler.json",
        "title": "Google Maps Platform + Grounding Lite MCP vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/google-maps-platform-vs-maptiler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/here-location-services-vs-locationiq.json",
        "title": "HERE Location Services vs LocationIQ",
        "url": "https://www.anchorterminal.com/compare/here-location-services-vs-locationiq"
      },
      {
        "json": "https://www.anchorterminal.com/compare/here-location-services-vs-maptiler.json",
        "title": "HERE Location Services vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/here-location-services-vs-maptiler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/locationiq-vs-mapbox.json",
        "title": "LocationIQ vs Mapbox APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-mapbox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/locationiq-vs-mapquest.json",
        "title": "LocationIQ vs MapQuest",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-mapquest"
      },
      {
        "json": "https://www.anchorterminal.com/compare/locationiq-vs-nextbillion.json",
        "title": "LocationIQ vs NextBillion.ai",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-nextbillion"
      },
      {
        "json": "https://www.anchorterminal.com/compare/locationiq-vs-nominatim.json",
        "title": "LocationIQ vs Nominatim",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-nominatim"
      },
      {
        "json": "https://www.anchorterminal.com/compare/locationiq-vs-opencage.json",
        "title": "LocationIQ vs OpenCage Geocoding API",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-opencage"
      },
      {
        "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/locationiq-vs-stadia-maps.json",
        "title": "LocationIQ vs Stadia Maps",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-stadia-maps"
      },
      {
        "json": "https://www.anchorterminal.com/compare/locationiq-vs-tomtom.json",
        "title": "LocationIQ vs TomTom Maps APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-tomtom"
      },
      {
        "json": "https://www.anchorterminal.com/compare/locationiq-vs-woosmap.json",
        "title": "LocationIQ vs Woosmap",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-woosmap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mapbox-vs-maptiler.json",
        "title": "Mapbox APIs + MCP vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/mapbox-vs-maptiler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mapquest-vs-maptiler.json",
        "title": "MapQuest vs MapTiler Cloud",
        "url": "https://www.anchorterminal.com/compare/mapquest-vs-maptiler"
      },
      {
        "json": "https://www.anchorterminal.com/compare/maptiler-vs-nextbillion.json",
        "title": "MapTiler Cloud vs NextBillion.ai",
        "url": "https://www.anchorterminal.com/compare/maptiler-vs-nextbillion"
      },
      {
        "json": "https://www.anchorterminal.com/compare/maptiler-vs-nominatim.json",
        "title": "MapTiler Cloud vs Nominatim",
        "url": "https://www.anchorterminal.com/compare/maptiler-vs-nominatim"
      },
      {
        "json": "https://www.anchorterminal.com/compare/maptiler-vs-opencage.json",
        "title": "MapTiler Cloud vs OpenCage Geocoding API",
        "url": "https://www.anchorterminal.com/compare/maptiler-vs-opencage"
      },
      {
        "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/maptiler-vs-stadia-maps.json",
        "title": "MapTiler Cloud vs Stadia Maps",
        "url": "https://www.anchorterminal.com/compare/maptiler-vs-stadia-maps"
      },
      {
        "json": "https://www.anchorterminal.com/compare/maptiler-vs-tomtom.json",
        "title": "MapTiler Cloud vs TomTom Maps APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/maptiler-vs-tomtom"
      },
      {
        "json": "https://www.anchorterminal.com/compare/maptiler-vs-woosmap.json",
        "title": "MapTiler Cloud vs Woosmap",
        "url": "https://www.anchorterminal.com/compare/maptiler-vs-woosmap"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 40,
        "edge": "locationiq",
        "key": "reliability",
        "locationiq": 83,
        "maptiler": 43,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 1,
        "edge": "maptiler",
        "key": "schema",
        "locationiq": 78,
        "maptiler": 79,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 4,
        "edge": "locationiq",
        "key": "ergonomics",
        "locationiq": 74,
        "maptiler": 70,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 9,
        "edge": "maptiler",
        "key": "security",
        "locationiq": 55,
        "maptiler": 64,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 10,
        "edge": "maptiler",
        "key": "payments",
        "locationiq": 30,
        "maptiler": 40,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 67,
        "edge": "maptiler",
        "key": "maintenance",
        "locationiq": 3,
        "maptiler": 70,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 19,
        "edge": "maptiler",
        "key": "transparency",
        "locationiq": 61,
        "maptiler": 80,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "MapTiler Cloud scores 62.1 (B) on agent readiness against LocationIQ's 60.3 (C), and leads in 5 of 7 scored categories. LocationIQ leads on reliability. Both do geocoding.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "locationiq": "5,000 free requests a day with no card, commercial use allowed with a link back. No changelog, release notes or blog.",
      "maptiler": "MapTiler Cloud has an OpenAPI 3.1 reference, llms.txt with Markdown pages, an agent skill and ISO 27001 certification, and allows geocoding results to be stored. The key always travels in the query string, there's no routing API, no documented rate limit or 429 handling, and the free plan excludes commercial use."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/locationiq-vs-maptiler",
    "json": "https://www.anchorterminal.com/compare/locationiq-vs-maptiler.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/locationiq-vs-maptiler.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/locationiq-vs-maptiler.min.md"
  },
  "markdown": "MapTiler Cloud scores 62.1 (B) on agent readiness against LocationIQ's 60.3 (C), and leads in 5 of 7 scored categories. LocationIQ leads on reliability. Both do geocoding.\n\n- LocationIQ: grade C, 60.3/100, rank #658 of 1510. Markdown https://www.anchorterminal.com/tools/locationiq.md · JSON https://www.anchorterminal.com/api/v1/tools/locationiq.json\n- MapTiler Cloud: grade B, 62.1/100, rank #576 of 1510. Markdown https://www.anchorterminal.com/tools/maptiler.md · JSON https://www.anchorterminal.com/api/v1/tools/maptiler.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### LocationIQ (C)\n\nGood for: A prototype or a cost-sensitive geocoding and routing job, with EU and US endpoints.\n\nAhead on:\n- Reliability, 83 against 43\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No changelog, release notes or blog\n\n### MapTiler Cloud (B)\n\nGood for: Map tiles, static maps and worldwide geocoding with storable results for apps that also show a map, with EU data residency.\n\nAhead on:\n- Security \u0026 auth, 64 against 55\n- Payments \u0026 pricing, 40 against 30\n- Maintenance \u0026 community, 70 against 3\n- Transparency \u0026 trust, 80 against 61\n\nWatch for: The API key is always sent as a query parameter\n\n\n## Why the edge\n\n### Maintenance \u0026 community: MapTiler Cloud +67\n\n- LocationIQ (3): We found no changelog, release notes or blog on 4 November (docs.locationiq.com/changelog, locationiq.com/changelog and locationiq.com/blog all return 404, and llms.txt lists none), so there's no dated API change to count. The terms were updated 31 March 2026, which isn't an API change (0). No dated entries in the last 90 days (0). No public changelog. Support is by email, which we didn't test (3). The official Python client hasn't changed since 30 March 2020 (0). Nothing current to judge package health by (0). The status page shows the service is run and watched, which this checklist doesn't capture. 0+0+3+0+0 = 3.\n- MapTiler Cloud (70): @maptiler/client 3.1.0 and @maptiler/sdk 4.2.0 on 2 October 2026, 35 days before this check, with the agent skill updated on 21 October (20). Platform updates entries for August (EU endpoint, key security) and September 2026 (terrain blending) plus the two October releases (20). A Discord community and support answered on a best-effort basis within two business days, per the Cloud terms. We didn't read GitHub issues (10). Official JavaScript client and SDK current, no Python client (12). The SDK repository runs unit and end-to-end tests in CI; we didn't check results (8). 20+20+10+12+8 = 70.\n\n### Reliability: LocationIQ +40\n\n- LocationIQ (83): status.locationiq.com lists 15 components by data centre (geocoding, autocomplete, maps and routing in Europe, US East, US West and Asia Pacific) with RSS and Atom history back to March 2018, 74 incidents in all, per the 1 October check (20). The newest incident then was 'Network Issues' on 2 April 2026, so 6 August to 1 October was clean. On 4 November the status host answered robots.txt with its app page, so nothing more was requested there, 2 October to 4 November is unread, and the line is held at what the read part supports (30). Per-second and daily limits for every plan, and per-token and per-IP limits on top, with soft daily limits of up to 100% more on paid plans (15). Three distinct 429 messages, Rate Limited Second, Minute and Day, and a 500 that says to retry after a short wait, but no Retry-After or backoff guidance (8). No SLA. The pricing page lists custom SLAs only on its top plan and points to public uptime instead (0). GA (10). 20+30+15+8+0+10 = 83.\n- MapTiler Cloud (43): Hosted lines. status.maptiler.com is a StatusCake public uptime report rather than a component incident page (15). Its data loads from app.statuscake.com, whose robots.txt answered with a redirect, so we didn't fetch it and read no history. That's our limit, not a finding, and the rubric gives 5 (5). Monthly request and session quotas are published per plan, but no per-second limit (5). No 429, Retry-After or backoff guidance found in the API reference, the OpenAPI spec or llms-full.txt (0). The pricing page lists a 99.9% SLA on the Custom plan, while the Cloud terms call availability best effort and point to a custom SLA (8). The public APIs are GA (10). 15+5+5+0+8+10 = 43.\n\n### Transparency \u0026 trust: MapTiler Cloud +19\n\n- LocationIQ (61): Closed service with readable terms, updated 31 March 2026, under the laws of Telangana, India (15). The terms are specific on storage, 48 hours on Free and for as long as you're a customer on paid plans, with no server-side tile caching. The privacy policy at locationiq.com/privacy was last updated 22 May 2020, says IP addresses are stored to check for abuse with no retention period, and links a DPA (15). No deprecation policy or notices found (0). Stripe, Zoho and Google Analytics named without locations. Data centre regions are visible on the status page, not in the policy (10).\n- MapTiler Cloud (80): Editorial half only. Closed service with general and Cloud-specific terms under Swiss law, and SDKs under BSD 3-Clause and the skill under MIT (20). The privacy policy covers account and payment data and says legal-claim data is kept up to 10 years, but says nothing about how long API request logs are kept (15). A dated deprecation page for v3 maps and migration guides, with no written notice period (12). Hosting with OVHcloud and Google Firebase, data mainly in Switzerland and the EEA, and an EU-only endpoint. Google Analytics, Firebase and FastSpring named in the privacy policy (17). 20+15+12+17 = 64.\n\n### Payments \u0026 pricing: MapTiler Cloud +10\n\n- LocationIQ (30): No x402, MPP or L402 (0). Public plan prices with daily or monthly quotas, but no per-request price or overage rate, since requests over quota are refused (10). Free plan of 5,000 requests a day with no card, and commercial use allowed with a prominent link back (20). Signup is a browser flow (0).\n- MapTiler Cloud (40): No x402, MPP or L402 (0). Per-1,000 prices for requests ($0.15) and sessions ($2.50) public without login (20). Free plan with no card, though only for testing and non-commercial use (20). Signup is a browser flow (0). 0+20+20+0 = 40.\n\n### Security \u0026 auth: MapTiler Cloud +9\n\n- LocationIQ (55): Separate tokens per application, each with scopes, HTTP referrer or IP restrictions (up to 5 CIDRs), its own rate limits, and rotation from the dashboard, which earns 30. Less 10 because the OpenAPI spec defines only the key query parameter. The free plan gets one token (20). Scopes and per-token limits give least privilege, and nothing writes (17). Results are OpenStreetMap-derived text with no prompt-injection guidance (7). The /balance endpoint shows remaining quota. We didn't check per-call logs (4). security.txt valid to 1 January 2028, re-read on 4 November, pointing to hello@locationiq.com. No bug bounty or certification found (7).\n- MapTiler Cloud (64): Revocable keys that can be limited to origins and a User-Agent substring and managed by the API keys API, and service tokens that sign requests so the token itself never travels, which earns 27. Less 10 because the key is 'always passed as a query parameter' (17). The public APIs are read-only, and account changes need a separate service token (16). Geocoding returns OpenStreetMap names and addresses, community-edited text, with no prompt-injection guidance (7). An Analytics API and account usage statistics (8). security.txt, a vulnerability disclosure policy and ISO/IEC 27001:2022 certification per the security page. No bug bounty found (16). 17+16+7+8+16 = 64.\n\n## Score by category\n\n| Category | Weight | LocationIQ | MapTiler Cloud | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 83 | 43 | LocationIQ +40 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 78 | 79 | MapTiler Cloud +1 |\n| Agent ergonomics | 13% (16.2 this run) | 74 | 70 | LocationIQ +4 |\n| Security \u0026 auth | 14% (17.5 this run) | 55 | 64 | MapTiler Cloud +9 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 40 | MapTiler Cloud +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 3 | 70 | MapTiler Cloud +67 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 61 | 80 | MapTiler Cloud +19 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **60.3 · C** | **62.1 · B** | |\n\n## Facts side by side\n\n| Fact | LocationIQ | MapTiler Cloud |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | LocationIQ (Unwired Labs) | MapTiler AG |\n| Hosted endpoint | `https://us1.locationiq.com/v1` | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | API key | API key |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | none | 2026-10-02 |\n| Terms last updated | 2026-03-31 | no date given |\n| Privacy policy last updated | 2020-05-22 | no date given |\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 | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | none | 115k npm/wk |\n| Agent reviews | 4.5/5 (2) | none |\n\n## How the scores have moved\n\n### LocationIQ\n\n- -0.3 on 8 October 2026: checklist\n\n### MapTiler Cloud\n\nNo score change since it was listed.\n\n## Verdicts\n\n**LocationIQ.** 5,000 free requests a day with no card, commercial use allowed with a link back. No changelog, release notes or blog.\n\n**MapTiler Cloud.** MapTiler Cloud has an OpenAPI 3.1 reference, llms.txt with Markdown pages, an agent skill and ISO 27001 certification, and allows geocoding results to be stored. The key always travels in the query string, there's no routing API, no documented rate limit or 429 handling, and the free plan excludes commercial use.\n\n## Before you call either\n\n### LocationIQ\n\n1. Use eu1.locationiq.com for European users or data\n2. Add format=json and limit=1 to keep responses small\n3. On 429 Rate Limited Second wait a second, on Rate Limited Day stop until the next day\n4. Call /balance before a large batch to see what's left of the day's quota\n5. Redact the key parameter before logging request URLs\n\n### MapTiler Cloud\n\n1. Restrict the key to an origin or User-Agent, or sign requests with a service token from a backend, since the key appears in every URL\n2. Use the batch geocoding path (up to 50 semicolon-separated queries) rather than one call per address\n3. Use api.maptiler.eu when the user's requests must stay in the EU\n4. Read docs pages as Markdown by appending .md, starting from https://docs.maptiler.com/llms.txt\n5. Don't cache map tiles server-side; the Cloud terms forbid it, though geocoding results may be stored with attribution\n\n## Questions\n\n### Which is better for AI agents, LocationIQ or MapTiler Cloud?\n\nMapTiler Cloud scores 62.1 (B) on agent readiness against LocationIQ's 60.3 (C), and leads in 5 of 7 scored categories. LocationIQ leads on reliability.\n\n### Do LocationIQ and MapTiler Cloud need an API key?\n\nBoth need an API key.\n\n### Can an agent call LocationIQ and MapTiler Cloud without installing anything?\n\nLocationIQ has a hosted endpoint at https://us1.locationiq.com/v1. No hosted endpoint is listed for MapTiler Cloud.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/locationiq-vs-maptiler.json, and with the fewest tokens: https://www.anchorterminal.com/compare/locationiq-vs-maptiler.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"locationiq\", \"b\": \"maptiler\"}`. From a terminal: `anchor compare locationiq maptiler`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/locationiq.json and https://www.anchorterminal.com/api/v1/tools/maptiler.json\n\n## Other comparisons with LocationIQ or MapTiler Cloud\n\n- [Amazon Location Service vs LocationIQ](https://www.anchorterminal.com/compare/amazon-location-vs-locationiq.md)\n- [Amazon Location Service vs MapTiler Cloud](https://www.anchorterminal.com/compare/amazon-location-vs-maptiler.md)\n- [ArcGIS Location Platform vs LocationIQ](https://www.anchorterminal.com/compare/arcgis-vs-locationiq.md)\n- [ArcGIS Location Platform vs MapTiler Cloud](https://www.anchorterminal.com/compare/arcgis-vs-maptiler.md)\n- [Azure Maps vs LocationIQ](https://www.anchorterminal.com/compare/azure-maps-vs-locationiq.md)\n- [Azure Maps vs MapTiler Cloud](https://www.anchorterminal.com/compare/azure-maps-vs-maptiler.md)\n- [Geoapify Location Platform + MCP vs LocationIQ](https://www.anchorterminal.com/compare/geoapify-vs-locationiq.md)\n- [Geoapify Location Platform + MCP vs MapTiler Cloud](https://www.anchorterminal.com/compare/geoapify-vs-maptiler.md)\n- [Geocodio vs LocationIQ](https://www.anchorterminal.com/compare/geocodio-vs-locationiq.md)\n- [Geocodio vs MapTiler Cloud](https://www.anchorterminal.com/compare/geocodio-vs-maptiler.md)\n- [Google Maps Platform + Grounding Lite MCP vs LocationIQ](https://www.anchorterminal.com/compare/google-maps-platform-vs-locationiq.md)\n- [Google Maps Platform + Grounding Lite MCP vs MapTiler Cloud](https://www.anchorterminal.com/compare/google-maps-platform-vs-maptiler.md)\n- [HERE Location Services vs LocationIQ](https://www.anchorterminal.com/compare/here-location-services-vs-locationiq.md)\n- [HERE Location Services vs MapTiler Cloud](https://www.anchorterminal.com/compare/here-location-services-vs-maptiler.md)\n- [LocationIQ vs Mapbox APIs + MCP](https://www.anchorterminal.com/compare/locationiq-vs-mapbox.md)\n- [LocationIQ vs MapQuest](https://www.anchorterminal.com/compare/locationiq-vs-mapquest.md)\n- [LocationIQ vs NextBillion.ai](https://www.anchorterminal.com/compare/locationiq-vs-nextbillion.md)\n- [LocationIQ vs Nominatim](https://www.anchorterminal.com/compare/locationiq-vs-nominatim.md)\n- [LocationIQ vs OpenCage Geocoding API](https://www.anchorterminal.com/compare/locationiq-vs-opencage.md)\n- [LocationIQ vs Radar](https://www.anchorterminal.com/compare/locationiq-vs-radar.md)\n- [LocationIQ vs Stadia Maps](https://www.anchorterminal.com/compare/locationiq-vs-stadia-maps.md)\n- [LocationIQ vs TomTom Maps APIs + MCP](https://www.anchorterminal.com/compare/locationiq-vs-tomtom.md)\n- [LocationIQ vs Woosmap](https://www.anchorterminal.com/compare/locationiq-vs-woosmap.md)\n- [Mapbox APIs + MCP vs MapTiler Cloud](https://www.anchorterminal.com/compare/mapbox-vs-maptiler.md)\n- [MapQuest vs MapTiler Cloud](https://www.anchorterminal.com/compare/mapquest-vs-maptiler.md)\n- [MapTiler Cloud vs NextBillion.ai](https://www.anchorterminal.com/compare/maptiler-vs-nextbillion.md)\n- [MapTiler Cloud vs Nominatim](https://www.anchorterminal.com/compare/maptiler-vs-nominatim.md)\n- [MapTiler Cloud vs OpenCage Geocoding API](https://www.anchorterminal.com/compare/maptiler-vs-opencage.md)\n- [MapTiler Cloud vs Radar](https://www.anchorterminal.com/compare/maptiler-vs-radar.md)\n- [MapTiler Cloud vs Stadia Maps](https://www.anchorterminal.com/compare/maptiler-vs-stadia-maps.md)\n- [MapTiler Cloud vs TomTom Maps APIs + MCP](https://www.anchorterminal.com/compare/maptiler-vs-tomtom.md)\n- [MapTiler Cloud vs Woosmap](https://www.anchorterminal.com/compare/maptiler-vs-woosmap.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": "LocationIQ vs MapTiler Cloud",
        "url": ""
      }
    ],
    "description": "MapTiler Cloud scores 62.1 (B) to LocationIQ's 60.3 (C) for geocoding. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "LocationIQ C 60.3",
      "MapTiler Cloud B 62.1",
      "scores"
    ],
    "h1": "LocationIQ vs MapTiler Cloud",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/locationiq-vs-maptiler",
    "published": "2026-10-01",
    "section": "tools",
    "title": "LocationIQ vs MapTiler Cloud for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/locationiq-vs-maptiler"
  },
  "tokens": {
    "markdown": 4100,
    "slim": 2180
  },
  "version": 1
}
