{
  "data": {
    "a": {
      "slug": "massive",
      "name": "Massive (formerly Polygon.io)",
      "vendor": "Massive",
      "vendorUrl": "https://massive.com",
      "kind": "http-api",
      "category": "market-data",
      "summary": "US market data API for stocks, options, indices, forex, crypto and futures, from the consolidated tapes.",
      "url": "https://www.anchorterminal.com/tools/massive",
      "markdownUrl": "https://www.anchorterminal.com/tools/massive.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/massive.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/massive.json",
      "dns": "massive.grade.anchorterminal.com",
      "repo": "https://github.com/massive-com/client-python",
      "license": "MIT (clients)",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.massive.com",
      "packages": [],
      "auth": "api-key",
      "authNotes": "`?apiKey=` or Bearer. x402 payments at agent.massive.com need no key.",
      "pricing": "freemium",
      "pricingNotes": "Free Basic plan at 5 calls a minute with 2 years of end-of-day data. Stocks Starter $29, Developer $79 and Advanced $199 a month for individuals (non-commercial), business plans priced separately (https://massive.com/pricing). Over x402 at agent.massive.com, 24 US stock routes at $0.01 a request in USDC on Base, with the live price in each 402 response (https://agentic.market/services/agent-massive-com).",
      "priceSummary": "$0.01 / call",
      "where": "hosted",
      "x402": {
        "level": "yes",
        "evidence": "x402 on agent.massive.com since 2026-09-01 per the changelog. The docs say each route quotes its live price in the 402 response and only successful requests are charged. Agentic.Market lists 24 GET routes at $0.01 each on Base, US stocks only, covering aggregates, snapshots, indicators, reference data, news and SEC filings (https://massive.com/docs/ai-tools/x402).",
        "endpoints": [
          {
            "url": "https://agent.massive.com/v2/aggs/ticker/{stocksTicker}/range/{multiplier}/{timespan}/{from}/{to}",
            "priceUsd": 0.01,
            "network": "eip155:8453"
          },
          {
            "url": "https://agent.massive.com/v2/snapshot/locale/us/markets/stocks/tickers/{stocksTicker}",
            "priceUsd": 0.01,
            "network": "eip155:8453"
          },
          {
            "url": "https://agent.massive.com/v3/reference/tickers",
            "priceUsd": 0.01,
            "network": "eip155:8453"
          },
          {
            "url": "https://agent.massive.com/v2/reference/news",
            "priceUsd": 0.01,
            "network": "eip155:8453"
          },
          {
            "url": "https://agent.massive.com/stocks/filings/vX/index",
            "priceUsd": 0.01,
            "network": "eip155:8453"
          }
        ]
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 1500,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-26"
      },
      "docsUrl": "https://massive.com/docs",
      "llmsTxt": "https://massive.com/llms.txt",
      "openapi": "https://api.massive.com/openapi",
      "capabilities": [
        "market.prices",
        "market.history",
        "data.markets",
        "market.crypto",
        "market.indices"
      ],
      "tags": [
        "official",
        "hosted",
        "x402",
        "freemium",
        "openapi",
        "llms-txt",
        "mcp"
      ],
      "lastRelease": "2026-10-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 73.1,
        "grade": "BB",
        "agentReady": true,
        "rank": 100,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 1,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 78,
          "maintenance": 82,
          "payments": 90,
          "reliability": 78,
          "schema": 89,
          "security": 35,
          "transparency": 67
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": 0,
        "verdict": "24 US stock routes over x402 at agent.massive.com, $0.01 each on Base, and only successful requests are charged. The status history lists 14 partial incidents in the 90 days to 1 November, including US equity aggregate bars missing for about 16 hours on 8 and 9 September.",
        "bestFor": "Agents that need US equities, options or futures data with real history, and the only listing here selling US stock data over x402.",
        "strengths": [
          "24 US stock routes over x402 at agent.massive.com, $0.01 each on Base, and only successful requests are charged",
          "OpenAPI document with enums and error responses, plus an llms.txt indexing about 160 endpoint pages",
          "Official clients in Python, JavaScript, Go and the JVM, regenerated from the OpenAPI spec as recently as 27 October 2026",
          "Incidents posted with start and end times on a Statuspage history feed",
          "Six dated changelog entries between 25 August and 28 October 2026"
        ],
        "weaknesses": [
          "14 partial incidents from 3 August to 1 November 2026, mostly stale or missing data on stock aggregates and quotes",
          "x402 covers US stocks only, with no ticks, streaming or other asset classes",
          "The API key is accepted as `?apiKey=` in the query string, the only scheme the OpenAPI file declares",
          "No security.txt, bug bounty or certification found, and the privacy policy dates from March 2024",
          "Individual plans are non-commercial and business terms forbid redistribution"
        ],
        "agentNotes": [
          "Send the key as a Bearer header, not `?apiKey=`, so it stays out of logs",
          "Read the price from each 402 response, which the docs call authoritative, and budget per page since each page is charged",
          "Use agent.massive.com only for US stocks. Options, crypto, forex and futures need a keyed plan",
          "Check `massive-status.com` when aggregates look stale, since several incidents since August were bars that stopped updating or went missing",
          "Don't republish prices fetched on an individual plan"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 73.1
          }
        ],
        "editorialScores": {
          "ergonomics": 78,
          "maintenance": 82,
          "payments": 90,
          "reliability": 78,
          "schema": 89,
          "security": 35,
          "transparency": 45
        },
        "provenanceScore": 88,
        "dataQualityScore": 87,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -H \"Authorization: Bearer $MASSIVE_API_KEY\" \"https://api.massive.com/v2/aggs/ticker/AAPL/prev\"",
        "claudeCode": "claude mcp add --transport http massive https://mcp.massive.com/"
      },
      "letme": {
        "capability": "https://letme.dev/market.prices",
        "tool": "https://letme.dev/massive"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Stocks Starter",
          "unit": "month",
          "usd": 29,
          "note": "individual, non-commercial"
        },
        {
          "item": "Stocks Developer",
          "unit": "month",
          "usd": 79,
          "note": "individual, non-commercial"
        },
        {
          "item": "Stocks Advanced",
          "unit": "month",
          "usd": 199,
          "note": "individual, non-commercial"
        }
      ],
      "provenance": {
        "legalEntity": "Massive.com, Inc.",
        "domain": "massive.com",
        "domainRegistered": "1995-02-13",
        "domainNote": "massive.com was registered in 1995, decades before the rename.",
        "endpointOnVendorDomain": true,
        "terms": "https://massive.com/legal/businesses-terms-of-service",
        "privacy": "https://massive.com/legal/privacy",
        "statusPage": "https://massive-status.com",
        "changelog": "https://massive.com/changelog",
        "securityTxt": "none",
        "checked": "2026-11-01",
        "score": 88
      },
      "dataQuality": {
        "coverage": "All 19 US stock exchanges plus dark pools, and options, indices, forex, crypto and futures",
        "coverageRating": 5,
        "freshness": "Real time, 15-minute delayed or end of day by plan",
        "freshnessClass": "realtime",
        "history": "2 to 20+ years by plan",
        "historyYears": 20,
        "methodology": "https://massive.com/docs/rest/stocks/overview",
        "sourcesDisclosed": true,
        "licence": "Proprietary, with published terms for individuals and businesses",
        "licenceClass": "clear",
        "standing": "",
        "standingClass": "none",
        "reuse": "Business terms forbid redistributing, sublicensing or selling the data, and require deletion on termination. Individual plans are non-commercial.",
        "score": 87,
        "checks": null
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/massive.json",
      "live": {
        "slug": "massive",
        "probe": {
          "target": "https://api.massive.com",
          "method": "get",
          "lastAt": "2026-11-04T20:05:11.628667828Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 308,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.98,
          "p50ms24h": 269,
          "p95ms24h": 363,
          "samples24h": 246,
          "samples30d": 8074,
          "days": [
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "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": 248
            },
            {
              "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": 248
            },
            {
              "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": 207,
              "ok": 207
            }
          ]
        },
        "vendorStatus": {
          "page": "https://massive-status.com",
          "indicator": "minor",
          "summary": "Partially Degraded Service",
          "checkedAt": "2026-11-04T20:05:20.993515171Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "massive-com/client-python",
            "version": "v2.9.1",
            "released": "2026-10-26",
            "seenAt": "2026-11-03T20:38:07.628511208Z"
          }
        ],
        "githubStars": 1523,
        "securityTxt": {
          "url": "https://massive.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:52:42.899942093Z"
        },
        "llmsTxt": {
          "url": "https://massive.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-04T15:23:22.551811497Z"
        },
        "domain": {
          "domain": "massive.com",
          "registered": "1995-02-13",
          "source": "https://rdap.verisign.com/com/v1/domain/massive.com",
          "checkedAt": "2026-11-01T14:07:32.013168238Z"
        },
        "pages": [
          {
            "url": "https://massive.com/changelog",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-04T08:27:39.330534708Z",
            "changedAt": "2026-10-31T06:16:01.564939681Z",
            "fingerprint": "0cd6bc9476ca"
          },
          {
            "url": "https://massive.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-04T08:27:45.659813839Z",
            "changedAt": "2026-10-31T06:16:08.173405264Z",
            "fingerprint": "c06a4148bf72"
          },
          {
            "url": "https://massive.com/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-04T08:27:43.705812993Z",
            "changedAt": "2026-10-31T06:16:05.957773097Z",
            "fingerprint": "1c9024302c92"
          },
          {
            "url": "https://massive.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-01T13:14:17.398766419Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "469364c15f7e"
          },
          {
            "url": "https://massive.com/legal/businesses-terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-04T08:27:41.718942017Z",
            "changedAt": "2026-10-31T06:16:03.806023028Z",
            "fingerprint": "f4ec38dadfe4"
          }
        ],
        "github": {
          "repo": "massive-com/client-python",
          "checkedAt": "2026-11-02T09:03:56.959547185Z",
          "stars": 1523,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-26T16:33:41Z",
          "openIssues": 13,
          "openPRs": 8,
          "issuesOpened90d": 4,
          "issuesClosed90d": 3,
          "prsMerged90d": 14,
          "ci": {
            "branch": "master",
            "runs": 50,
            "success": 48,
            "failure": 2,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-10-26T04:23:15Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 7,
            "medianDays": 1.1
          }
        },
        "updatedAt": "2026-11-04T20:05:11.628667828Z"
      }
    },
    "answer": "Massive (formerly Polygon.io) scores 73.1 (BB) on agent readiness against Tiingo's 46.2 (D), and leads in every scored category.",
    "b": {
      "slug": "tiingo",
      "name": "Tiingo",
      "vendor": "Tiingo Inc.",
      "vendorUrl": "https://www.tiingo.com",
      "kind": "http-api",
      "category": "market-data",
      "summary": "Tiingo is a market data API from Tiingo Inc. for end-of-day and real-time US equity prices, fund fees, fundamentals, dividends and splits, news, crypto and forex, over REST and WebSocket. Agents call api.tiingo.com with an account token.",
      "url": "https://www.anchorterminal.com/tools/tiingo",
      "markdownUrl": "https://www.anchorterminal.com/tools/tiingo.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/tiingo.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/tiingo.json",
      "dns": "tiingo.grade.anchorterminal.com",
      "transports": [
        "http",
        "websocket"
      ],
      "remoteUrl": "https://api.tiingo.com",
      "packages": [],
      "auth": "api-key",
      "authNotes": "One API token of about 75 characters per account, from the account page after a browser signup. The connecting guide accepts it as `?token=` in the URL or as an `Authorization: Token \u003ctoken\u003e` header; WebSocket subscriptions carry it as `authToken` in the subscribe message. The token can be rotated on the account token page (added per the changelog of 12 May 2026). No scopes or expiry found.",
      "pricing": "freemium",
      "pricingNotes": "Starter plan free at 50 requests an hour, 1,000 a day, 1 GB a month and 500 unique symbols a month, internal use only; no card requirement stated. Power plan $30 a month at 10,000 requests an hour, 100,000 a day, 40 GB and all 110,424 symbols, also internal use only. Fundamentals are a separate add-on through a third-party provider, priced by email; commercial, redistribution and white-label licences by contact (https://www.tiingo.com/pricing, checked 2026-11-03).",
      "priceSummary": "$30 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the documentation, llms.txt or pricing (checked 2026-11-03). A call without a token returns HTTP 403 with `{\"detail\":\"Please supply a token\"}`.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://www.tiingo.com/documentation/general/overview",
      "llmsTxt": "https://www.tiingo.com/llms.txt",
      "capabilities": [
        "market.prices",
        "market.history",
        "market.news",
        "market.fundamentals",
        "market.crypto",
        "data.markets"
      ],
      "tags": [
        "hosted",
        "freemium",
        "api-key",
        "llms-txt",
        "status-page",
        "free-tier",
        "closed-source",
        "stocks",
        "crypto",
        "forex",
        "streaming",
        "personal-use"
      ],
      "lastRelease": "2026-10-09",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 46.2,
        "grade": "D",
        "agentReady": false,
        "rank": 1118,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 9,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 56,
          "maintenance": 50,
          "payments": 30,
          "reliability": 60,
          "schema": 39,
          "security": 32,
          "transparency": 57
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "A dated changelog since 2017, a one-year support commitment after breaking changes, an Instatus status page and a free token at 1,000 requests a day. The token is documented in the URL, no OpenAPI document, error reference, SDK or MCP server exists, and the terms and privacy policy sit on a host that refused our reader.",
        "bestFor": "Agents that need clean US end-of-day composites with dividend and split adjustments, fund fees and news on a cheap plan, and anyone who values a long changelog.",
        "strengths": [
          "Changelog dated by entry from 2017 to 9 October 2026, and a stated one-year support window after a breaking change",
          "Status page on Instatus with 13 components and a notice history",
          "Limits in requests an hour, a day and bandwidth a month, with no per-second throttle, and token rotation on the account page",
          "Free Starter token at 1,000 requests a day, and a $30 a month Power plan published without login",
          "llms.txt and llms-full.txt served for agents, with product routing notes"
        ],
        "weaknesses": [
          "The connecting guide documents the token as `?token=` in the URL alongside the header",
          "No OpenAPI document, no documented error responses, no official SDK and no MCP server",
          "Terms and privacy policy on app.tiingo.com answered 403 to every request, so neither was read",
          "Both self-serve plans are internal use only; display, redistribution and white-label need a negotiated licence",
          "Blue Ocean ATS endpoints were down for about 10 hours on 21 October 2026, and the status history starts on 21 September 2026"
        ],
        "agentNotes": [
          "Send the token as `Authorization: Token \u003ctoken\u003e`, not as `?token=` in the URL",
          "Ask for `format=csv` on large price pulls; the docs say CSV is 4 to 5 times faster than JSON, and bandwidth counts against the monthly cap",
          "Count requests an hour and a day, not per second; 50 an hour on Starter, 10,000 on Power, reset on the hour and at midnight ET",
          "Expect 403 `{\"detail\":\"Please supply a token\"}` without a token; other error shapes are undocumented, so log the body",
          "Use dashes in share classes (BRK-A), and fetch supported_tickers.zip rather than guessing symbols"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 46.2
          }
        ],
        "editorialScores": {
          "ergonomics": 56,
          "maintenance": 50,
          "payments": 30,
          "reliability": 60,
          "schema": 39,
          "security": 32,
          "transparency": 28
        },
        "provenanceScore": 86,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -H \"Authorization: Token $TIINGO_TOKEN\" \"https://api.tiingo.com/tiingo/daily/aapl/prices?startDate=2025-11-03\u0026format=csv\""
      },
      "letme": {
        "capability": "https://letme.dev/market.prices",
        "tool": "https://letme.dev/tiingo"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Power, 10,000 requests an hour",
          "unit": "month",
          "usd": 30,
          "note": "internal use only, 100,000 requests a day, 40 GB a month"
        }
      ],
      "provenance": {
        "legalEntity": "Tiingo Inc.",
        "domain": "tiingo.com",
        "domainRegistered": "2011-03-04",
        "endpointOnVendorDomain": true,
        "terms": "https://app.tiingo.com/terms",
        "privacy": "https://app.tiingo.com/privacy",
        "statusPage": "https://status.tiingo.com",
        "changelog": "https://www.tiingo.com/documentation/general/changelog",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "Tiingo Inc. appears in the copyright line of the about page, which gives Alexandria, VA. No registration number or address was found on a page we could read.",
          "www.tiingo.com/privacy redirects to app.tiingo.com/privacy, and app.tiingo.com/terms is the terms address; app.tiingo.com answered 403 to every request from our reader and from curl, so neither document was read.",
          "www.tiingo.com/robots.txt disallows only /admin. The developer programme page forbids programmatic registration or login and wrapping the login form; nothing read forbids reading the website.",
          "RDAP gives tiingo.com a registration date of 4 March 2011 at GoDaddy.",
          "/.well-known/security.txt on www.tiingo.com redirects (301) and api.tiingo.com returns 404, so none.",
          "The status page is Instatus at status.tiingo.com, named in llms.txt with uptime.tiingo.com as an audited uptime page."
        ],
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/tiingo.json",
      "live": {
        "slug": "tiingo",
        "probe": {
          "target": "https://api.tiingo.com",
          "method": "get",
          "lastAt": "2026-11-04T20:05:30.255404738Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 523,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 494,
          "p95ms24h": 587,
          "samples24h": 48,
          "samples30d": 48,
          "days": [
            {
              "date": "2026-11-04",
              "probes": 48,
              "ok": 48
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.tiingo.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-04T15:32:39.454553229Z"
        },
        "securityTxt": {
          "url": "https://tiingo.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:54:24.456607715Z"
        },
        "updatedAt": "2026-11-04T20:05:30.255404738Z"
      }
    },
    "edges": [
      {
        "by": 60,
        "category": "payments",
        "leads": "massive",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "x402 on its own domain at agent.massive.com since 1 September, but only 23 US stock routes. Options, indices, forex, crypto, futures, tick data and streaming still need a key (30 of 40). $0.01 a route on Agentic.Market, which the docs link to, and plan prices on massive.com/pricing, all without a login (20). Free Basic plan at 5 calls a minute with end-of-day data. The pricing page doesn't say a card is needed (20). An agent with a funded Base wallet can pay with no account (20).",
          "b": "No x402, MPP or L402 (0). Two plan prices public without login, $0 and $30 a month, sold by requests an hour and a day rather than per call; fundamentals and commercial licences by email (10). A free Starter plan at 1,000 requests a day with no card requirement stated (20). The token comes from a browser signup, and the developer programme forbids programmatic registration (0). 0 + 10 + 20 + 0 = 30."
        },
        "scores": {
          "a": 90,
          "b": 30
        }
      },
      {
        "by": 50,
        "category": "schema",
        "leads": "massive",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "OpenAPI document at api.massive.com/openapi (OpenAPI 3.0.3, 148 paths) with enums such as `timespan` and `sort`, and 400, 401 and 404 responses defined (25). llms.txt at massive.com/docs/rest/llms.txt indexing about 160 endpoint pages (10). One-line descriptions per endpoint in the index, longer ones in the reference, with little on when not to use a call (14 of 20). Typed path and query parameters with enums and required fields (13 of 15). Examples in the docs and error responses in the spec, though the llms.txt says nothing about error shapes (12 of 15). Versioned paths from /v1 to /v3 and a dated public changelog (15).",
          "b": "No OpenAPI document or MCP server was found (0 of 25). llms.txt and llms-full.txt are served, with product routing and licence notes (10). Each documentation page states the endpoint's purpose and timing, such as prices after 5.30 pm ET with corrections to 8 pm, with little on when not to use it (12 of 20). Parameters and response fields are tabled with names and meanings, but types, defaults and allowed values are partly in prose (8 of 15). Examples in Python, Node and PHP on every page; no error responses documented (7 of 15). A changelog dated by entry since 2017 and a one-year support commitment after breaking changes, with no version in the path (12 of 15). 0 + 10 + 12 + 8 + 7 + 12 = 39."
        },
        "scores": {
          "a": 89,
          "b": 39
        }
      },
      {
        "by": 32,
        "category": "maintenance",
        "leads": "massive",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Newest changelog entry 2026-10-28, new Insider Trading Activity and Insider Holdings endpoints (30). Changelog entries on 25 August, 1 September, 22 September, 2 October, 16 October and 28 October, six in 90 days, besides client releases (20). Public changelog and a support channel. We couldn't read GitHub issue activity in this run (10 of 15). Official clients are current, with Python v2.9.0 on 2026-10-16 and v2.9.1 on 2026-10-25, Go v3.5.0, v3.6.0 and v3.7.0 between 20 and 27 October and JavaScript v10.8.0 on 2026-09-17, each regenerated from the OpenAPI spec (15). The MCP and client repos run CI. The MCP server repository is still at v0.10.0 of 2026-05-05 and its README still calls the project experimental (7 of 10).",
          "b": "Read as a closed service. The changelog's newest entry is 9 October 2026 (30). Entries dated 9 October and 8 September 2026 fall in the last 90 days, with 21 July just outside, and the status page adds a maintenance window on 28 September (12 of 20). A dated changelog, a support address and a blog, with the developer programme promising priority email support (8 of 15). No official SDK (0 of 15). No package to assess (0 of 10). 30 + 12 + 8 + 0 + 0 = 50."
        },
        "scores": {
          "a": 82,
          "b": 50
        }
      },
      {
        "by": 22,
        "category": "ergonomics",
        "leads": "massive",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "`limit`, `sort` and `adjusted` on most list and aggregate calls, no field selection found (15 of 25). `next_url` pagination that the official clients follow for you, plus date and ticker filters (18 of 20). Errors in the spec carry a status and message, with 400 responses on 64 of the 148 operations (14 of 20). All market data calls are GETs, and the x402 docs say only successful requests are charged and each page is charged separately. The hosted MCP's three tools carry readOnlyHint, per the 1 October check (16 of 20). Official clients in Python, JavaScript, Go and the JVM, with few required parameters (15).",
          "b": "`startDate`, `endDate`, `resampleFreq`, `format=csv` and column selection on some endpoints size responses; no field selection on end-of-day prices (15 of 25). Date ranges throughout and limit and offset on news, no cursor (15 of 20). Errors are undocumented; a missing token answered 403 with a JSON `detail` field in our one test call (3 of 20). Every call is a read (16 of 20). Few required parameters, but no official SDK; the docs point to third-party packages (7 of 15). 15 + 15 + 3 + 16 + 7 = 56."
        },
        "scores": {
          "a": 78,
          "b": 56
        }
      },
      {
        "by": 18,
        "category": "reliability",
        "leads": "massive",
        "name": "Reliability",
        "reasons": {
          "a": "Atlassian Statuspage at massive-status.com with REST, WebSocket and flat-file components for each asset class (20). The history feed lists 14 unplanned incidents from 3 August to 1 November 2026, each limited to one product, one endpoint, one asset class or some accounts. They include US equity aggregate bars missing for roughly two-thirds of US equities from 18:46 ET on 8 September until 10:29 the next day, stale stocks quotes on 20 August, and slow responses with intermittent 502s on stocks v2 aggregates from 10:37 to 13:08 ET on 2 September. The newest, on 27 October, was delayed WebSocket data and REST errors for some accounts from 13:49 to 14:17 EDT. Read the way partial incidents are read on other listings, that is minor incidents only (20). Free plan limited to 5 calls a minute, paid plans unlimited, nothing stated for x402 (10 of 15). No 429 or Retry-After guidance found in the docs or the OpenAPI file, though the official Python client retries 429 with backoff (8 of 15). The business terms dated 6 October 2026 point to a separate Support Policy and SLA document for customers who buy service levels (10). The REST API is generally available (10).",
          "b": "Read with the hosted lines. A public status page on Instatus at status.tiingo.com lists 13 components with a notice history (20). The history in the 90 days to 3 November 2026 shows a 9 hour 59 minute outage of the Blue Ocean ATS endpoints on 21 October, a WebSocket issue on 21 September and two maintenance windows, with nothing recorded before 21 September; a long outage of one niche feed rather than the core price API (15). Limits are published with numbers, 50 and 10,000 requests an hour, 1,000 and 100,000 a day and 1 GB and 40 GB a month (15). No 429, Retry-After or backoff guidance was found (0). No SLA found (0). The end-of-day, news, crypto and forex APIs are generally available, while Equity Realtime and BOATS are in beta (10). 20 + 15 + 15 + 0 + 0 + 10 = 60."
        },
        "scores": {
          "a": 78,
          "b": 60
        }
      },
      {
        "by": 10,
        "category": "transparency",
        "leads": "massive",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed service under business terms last updated 6 October 2026, Massive.com, Inc. under Georgia law, which now also cover pay-per-request purchases without an account. The MCP server and clients are MIT (15). Privacy policy last updated 22 March 2024, with retention 'as long as we are providing the Services' and no periods. The business terms require deleting data on termination. No DPA found (12 of 30). Dated sunsets in the changelog. The terms let Massive change the Services at its discretion, with a 30-day route to report a change that materially degrades a subscribed service (10 of 20). Stripe, Google and Hotjar are named, and data may sit 'in the United States and locations around the world'. No subprocessor list (8 of 20).",
          "b": "A closed service whose terms sit on app.tiingo.com, which answered 403 to every request, so they were not read; the pricing and documentation pages define internal, commercial and redistribution licences (8 of 30). The privacy policy is on the same host and was not read (0 of 30). The developer programme commits to a year of continued support after a breaking change, with changes posted in the changelog and emailed to registered developers, and the changelog's 9 October 2026 entry describes a changed default for prevClose (16 of 20). Equinix hosting is named on the about page, with no processor list or data location (4 of 20). 8 + 0 + 16 + 4 = 28."
        },
        "scores": {
          "a": 67,
          "b": 57
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Massive",
        "b": "Tiingo Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://api.massive.com",
        "b": "https://api.tiingo.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "HTTP, websocket",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "yes, from $0.01/call",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT (clients)",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-28",
        "b": "2026-10-09",
        "name": "Last release"
      },
      {
        "a": "2026-10-06",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "2024-03-22",
        "b": "2026-02-18",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "1.5k stars",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Massive (formerly Polygon.io) scores 73.1 (BB) on agent readiness against Tiingo's 46.2 (D), and leads in every scored category.",
        "question": "Which is better for AI agents, Massive (formerly Polygon.io) or Tiingo?"
      },
      {
        "answer": "Both need an API key. An agent can also pay Massive (formerly Polygon.io) per call over x402, with no account.",
        "question": "Do Massive (formerly Polygon.io) and Tiingo need an API key?"
      },
      {
        "answer": "Yes. Massive (formerly Polygon.io) has a hosted endpoint at https://api.massive.com and Tiingo at https://api.tiingo.com.",
        "question": "Can an agent call Massive (formerly Polygon.io) and Tiingo without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 78 against 60",
          "Schema \u0026 documentation, 89 against 39",
          "Agent ergonomics, 78 against 56",
          "Payments \u0026 pricing, 90 against 30",
          "Maintenance \u0026 community, 82 against 50",
          "Transparency \u0026 trust, 67 against 57"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "An agent can pay per call over x402, with no account"
        ],
        "goodFor": "Agents that need US equities, options or futures data with real history, and the only listing here selling US stock data over x402.",
        "slug": "massive",
        "watchFor": "14 partial incidents from 3 August to 1 November 2026, mostly stale or missing data on stock aggregates and quotes"
      },
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "Agents that need clean US end-of-day composites with dividend and split adjustments, fund fees and news on a cheap plan, and anyone who values a long changelog.",
        "slug": "tiingo",
        "watchFor": "The connecting guide documents the token as `?token=` in the URL alongside the header"
      }
    ],
    "history": {
      "massive": [
        {
          "causes": [
            "product",
            "correction"
          ],
          "date": "2026-11-01",
          "delta": 3.2,
          "from": 69.9,
          "fromGrade": "B",
          "to": 73.1,
          "toGrade": "BB"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 69.8,
          "fromGrade": "B",
          "to": 69.9,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.2,
          "from": 70,
          "fromGrade": "BB",
          "to": 69.8,
          "toGrade": "B"
        }
      ],
      "tiingo": null
    },
    "job": {
      "capability": "market.prices",
      "name": "Market prices"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/alpha-vantage-vs-massive.json",
        "title": "Alpha Vantage vs Massive (formerly Polygon.io)",
        "url": "https://www.anchorterminal.com/compare/alpha-vantage-vs-massive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alpha-vantage-vs-tiingo.json",
        "title": "Alpha Vantage vs Tiingo",
        "url": "https://www.anchorterminal.com/compare/alpha-vantage-vs-tiingo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/benzinga-vs-massive.json",
        "title": "Benzinga vs Massive (formerly Polygon.io)",
        "url": "https://www.anchorterminal.com/compare/benzinga-vs-massive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/databento-vs-massive.json",
        "title": "Databento vs Massive (formerly Polygon.io)",
        "url": "https://www.anchorterminal.com/compare/databento-vs-massive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/databento-vs-tiingo.json",
        "title": "Databento vs Tiingo",
        "url": "https://www.anchorterminal.com/compare/databento-vs-tiingo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/financial-datasets-vs-massive.json",
        "title": "Financial Datasets vs Massive (formerly Polygon.io)",
        "url": "https://www.anchorterminal.com/compare/financial-datasets-vs-massive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/financial-modeling-prep-vs-massive.json",
        "title": "Financial Modeling Prep vs Massive (formerly Polygon.io)",
        "url": "https://www.anchorterminal.com/compare/financial-modeling-prep-vs-massive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finnhub-vs-massive.json",
        "title": "Finnhub vs Massive (formerly Polygon.io)",
        "url": "https://www.anchorterminal.com/compare/finnhub-vs-massive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finnhub-vs-tiingo.json",
        "title": "Finnhub vs Tiingo",
        "url": "https://www.anchorterminal.com/compare/finnhub-vs-tiingo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/intrinio-vs-massive.json",
        "title": "Intrinio vs Massive (formerly Polygon.io)",
        "url": "https://www.anchorterminal.com/compare/intrinio-vs-massive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/intrinio-vs-tiingo.json",
        "title": "Intrinio vs Tiingo",
        "url": "https://www.anchorterminal.com/compare/intrinio-vs-tiingo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/massive-vs-twelve-data.json",
        "title": "Massive (formerly Polygon.io) vs Twelve Data",
        "url": "https://www.anchorterminal.com/compare/massive-vs-twelve-data"
      },
      {
        "json": "https://www.anchorterminal.com/compare/tiingo-vs-twelve-data.json",
        "title": "Tiingo vs Twelve Data",
        "url": "https://www.anchorterminal.com/compare/tiingo-vs-twelve-data"
      },
      {
        "json": "https://www.anchorterminal.com/compare/financial-datasets-vs-tiingo.json",
        "title": "Financial Datasets vs Tiingo",
        "url": "https://www.anchorterminal.com/compare/financial-datasets-vs-tiingo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/financial-modeling-prep-vs-tiingo.json",
        "title": "Financial Modeling Prep vs Tiingo",
        "url": "https://www.anchorterminal.com/compare/financial-modeling-prep-vs-tiingo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/eodhd-vs-massive.json",
        "title": "EODHD vs Massive (formerly Polygon.io)",
        "url": "https://www.anchorterminal.com/compare/eodhd-vs-massive"
      },
      {
        "json": "https://www.anchorterminal.com/compare/eodhd-vs-tiingo.json",
        "title": "EODHD vs Tiingo",
        "url": "https://www.anchorterminal.com/compare/eodhd-vs-tiingo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/benzinga-vs-tiingo.json",
        "title": "Benzinga vs Tiingo",
        "url": "https://www.anchorterminal.com/compare/benzinga-vs-tiingo"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 18,
        "edge": "massive",
        "key": "reliability",
        "massive": 78,
        "name": "Reliability",
        "tiingo": 60,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 50,
        "edge": "massive",
        "key": "schema",
        "massive": 89,
        "name": "Schema \u0026 documentation",
        "tiingo": 39,
        "weight": 13
      },
      {
        "by": 22,
        "edge": "massive",
        "key": "ergonomics",
        "massive": 78,
        "name": "Agent ergonomics",
        "tiingo": 56,
        "weight": 13
      },
      {
        "by": 3,
        "edge": "massive",
        "key": "security",
        "massive": 35,
        "name": "Security \u0026 auth",
        "tiingo": 32,
        "weight": 14
      },
      {
        "by": 60,
        "edge": "massive",
        "key": "payments",
        "massive": 90,
        "name": "Payments \u0026 pricing",
        "tiingo": 30,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 32,
        "edge": "massive",
        "key": "maintenance",
        "massive": 82,
        "name": "Maintenance \u0026 community",
        "tiingo": 50,
        "weight": 7
      },
      {
        "by": 10,
        "edge": "massive",
        "key": "transparency",
        "massive": 67,
        "name": "Transparency \u0026 trust",
        "tiingo": 57,
        "weight": 7
      }
    ],
    "summary": "Massive (formerly Polygon.io) scores 73.1 (BB) on agent readiness against Tiingo's 46.2 (D), and leads in every scored category. Both do market prices. Massive (formerly Polygon.io) accepts x402. Tiingo doesn't.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "massive": "24 US stock routes over x402 at agent.massive.com, $0.01 each on Base, and only successful requests are charged. The status history lists 14 partial incidents in the 90 days to 1 November, including US equity aggregate bars missing for about 16 hours on 8 and 9 September.",
      "tiingo": "A dated changelog since 2017, a one-year support commitment after breaking changes, an Instatus status page and a free token at 1,000 requests a day. The token is documented in the URL, no OpenAPI document, error reference, SDK or MCP server exists, and the terms and privacy policy sit on a host that refused our reader."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/massive-vs-tiingo",
    "json": "https://www.anchorterminal.com/compare/massive-vs-tiingo.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/massive-vs-tiingo.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/massive-vs-tiingo.min.md"
  },
  "markdown": "Massive (formerly Polygon.io) scores 73.1 (BB) on agent readiness against Tiingo's 46.2 (D), and leads in every scored category. Both do market prices. Massive (formerly Polygon.io) accepts x402. Tiingo doesn't.\n\n- Massive (formerly Polygon.io): grade BB, 73.1/100, rank #100 of 1349. Markdown https://www.anchorterminal.com/tools/massive.md · JSON https://www.anchorterminal.com/api/v1/tools/massive.json\n- Tiingo: grade D, 46.2/100, rank #1118 of 1349. Markdown https://www.anchorterminal.com/tools/tiingo.md · JSON https://www.anchorterminal.com/api/v1/tools/tiingo.json\n- Best financial market data APIs for AI agents: https://www.anchorterminal.com/best/market-data/index.md\n- All 55 markets comparisons: https://www.anchorterminal.com/compare/market-data/index.md\n\n## Which one, for what\n\n### Massive (formerly Polygon.io) (BB)\n\nGood for: Agents that need US equities, options or futures data with real history, and the only listing here selling US stock data over x402.\n\nAhead on:\n- Reliability, 78 against 60\n- Schema \u0026 documentation, 89 against 39\n- Agent ergonomics, 78 against 56\n- Payments \u0026 pricing, 90 against 30\n- Maintenance \u0026 community, 82 against 50\n- Transparency \u0026 trust, 67 against 57\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- An agent can pay per call over x402, with no account\n\nWatch for: 14 partial incidents from 3 August to 1 November 2026, mostly stale or missing data on stock aggregates and quotes\n\n### Tiingo (D)\n\nGood for: Agents that need clean US end-of-day composites with dividend and split adjustments, fund fees and news on a cheap plan, and anyone who values a long changelog.\n\nWatch for: The connecting guide documents the token as `?token=` in the URL alongside the header\n\n\n## Why the edge\n\n### Payments \u0026 pricing: Massive (formerly Polygon.io) +60\n\n- Massive (formerly Polygon.io) (90): x402 on its own domain at agent.massive.com since 1 September, but only 23 US stock routes. Options, indices, forex, crypto, futures, tick data and streaming still need a key (30 of 40). $0.01 a route on Agentic.Market, which the docs link to, and plan prices on massive.com/pricing, all without a login (20). Free Basic plan at 5 calls a minute with end-of-day data. The pricing page doesn't say a card is needed (20). An agent with a funded Base wallet can pay with no account (20).\n- Tiingo (30): No x402, MPP or L402 (0). Two plan prices public without login, $0 and $30 a month, sold by requests an hour and a day rather than per call; fundamentals and commercial licences by email (10). A free Starter plan at 1,000 requests a day with no card requirement stated (20). The token comes from a browser signup, and the developer programme forbids programmatic registration (0). 0 + 10 + 20 + 0 = 30.\n\n### Schema \u0026 documentation: Massive (formerly Polygon.io) +50\n\n- Massive (formerly Polygon.io) (89): OpenAPI document at api.massive.com/openapi (OpenAPI 3.0.3, 148 paths) with enums such as `timespan` and `sort`, and 400, 401 and 404 responses defined (25). llms.txt at massive.com/docs/rest/llms.txt indexing about 160 endpoint pages (10). One-line descriptions per endpoint in the index, longer ones in the reference, with little on when not to use a call (14 of 20). Typed path and query parameters with enums and required fields (13 of 15). Examples in the docs and error responses in the spec, though the llms.txt says nothing about error shapes (12 of 15). Versioned paths from /v1 to /v3 and a dated public changelog (15).\n- Tiingo (39): No OpenAPI document or MCP server was found (0 of 25). llms.txt and llms-full.txt are served, with product routing and licence notes (10). Each documentation page states the endpoint's purpose and timing, such as prices after 5.30 pm ET with corrections to 8 pm, with little on when not to use it (12 of 20). Parameters and response fields are tabled with names and meanings, but types, defaults and allowed values are partly in prose (8 of 15). Examples in Python, Node and PHP on every page; no error responses documented (7 of 15). A changelog dated by entry since 2017 and a one-year support commitment after breaking changes, with no version in the path (12 of 15). 0 + 10 + 12 + 8 + 7 + 12 = 39.\n\n### Maintenance \u0026 community: Massive (formerly Polygon.io) +32\n\n- Massive (formerly Polygon.io) (82): Newest changelog entry 2026-10-28, new Insider Trading Activity and Insider Holdings endpoints (30). Changelog entries on 25 August, 1 September, 22 September, 2 October, 16 October and 28 October, six in 90 days, besides client releases (20). Public changelog and a support channel. We couldn't read GitHub issue activity in this run (10 of 15). Official clients are current, with Python v2.9.0 on 2026-10-16 and v2.9.1 on 2026-10-25, Go v3.5.0, v3.6.0 and v3.7.0 between 20 and 27 October and JavaScript v10.8.0 on 2026-09-17, each regenerated from the OpenAPI spec (15). The MCP and client repos run CI. The MCP server repository is still at v0.10.0 of 2026-05-05 and its README still calls the project experimental (7 of 10).\n- Tiingo (50): Read as a closed service. The changelog's newest entry is 9 October 2026 (30). Entries dated 9 October and 8 September 2026 fall in the last 90 days, with 21 July just outside, and the status page adds a maintenance window on 28 September (12 of 20). A dated changelog, a support address and a blog, with the developer programme promising priority email support (8 of 15). No official SDK (0 of 15). No package to assess (0 of 10). 30 + 12 + 8 + 0 + 0 = 50.\n\n### Agent ergonomics: Massive (formerly Polygon.io) +22\n\n- Massive (formerly Polygon.io) (78): `limit`, `sort` and `adjusted` on most list and aggregate calls, no field selection found (15 of 25). `next_url` pagination that the official clients follow for you, plus date and ticker filters (18 of 20). Errors in the spec carry a status and message, with 400 responses on 64 of the 148 operations (14 of 20). All market data calls are GETs, and the x402 docs say only successful requests are charged and each page is charged separately. The hosted MCP's three tools carry readOnlyHint, per the 1 October check (16 of 20). Official clients in Python, JavaScript, Go and the JVM, with few required parameters (15).\n- Tiingo (56): `startDate`, `endDate`, `resampleFreq`, `format=csv` and column selection on some endpoints size responses; no field selection on end-of-day prices (15 of 25). Date ranges throughout and limit and offset on news, no cursor (15 of 20). Errors are undocumented; a missing token answered 403 with a JSON `detail` field in our one test call (3 of 20). Every call is a read (16 of 20). Few required parameters, but no official SDK; the docs point to third-party packages (7 of 15). 15 + 15 + 3 + 16 + 7 = 56.\n\n### Reliability: Massive (formerly Polygon.io) +18\n\n- Massive (formerly Polygon.io) (78): Atlassian Statuspage at massive-status.com with REST, WebSocket and flat-file components for each asset class (20). The history feed lists 14 unplanned incidents from 3 August to 1 November 2026, each limited to one product, one endpoint, one asset class or some accounts. They include US equity aggregate bars missing for roughly two-thirds of US equities from 18:46 ET on 8 September until 10:29 the next day, stale stocks quotes on 20 August, and slow responses with intermittent 502s on stocks v2 aggregates from 10:37 to 13:08 ET on 2 September. The newest, on 27 October, was delayed WebSocket data and REST errors for some accounts from 13:49 to 14:17 EDT. Read the way partial incidents are read on other listings, that is minor incidents only (20). Free plan limited to 5 calls a minute, paid plans unlimited, nothing stated for x402 (10 of 15). No 429 or Retry-After guidance found in the docs or the OpenAPI file, though the official Python client retries 429 with backoff (8 of 15). The business terms dated 6 October 2026 point to a separate Support Policy and SLA document for customers who buy service levels (10). The REST API is generally available (10).\n- Tiingo (60): Read with the hosted lines. A public status page on Instatus at status.tiingo.com lists 13 components with a notice history (20). The history in the 90 days to 3 November 2026 shows a 9 hour 59 minute outage of the Blue Ocean ATS endpoints on 21 October, a WebSocket issue on 21 September and two maintenance windows, with nothing recorded before 21 September; a long outage of one niche feed rather than the core price API (15). Limits are published with numbers, 50 and 10,000 requests an hour, 1,000 and 100,000 a day and 1 GB and 40 GB a month (15). No 429, Retry-After or backoff guidance was found (0). No SLA found (0). The end-of-day, news, crypto and forex APIs are generally available, while Equity Realtime and BOATS are in beta (10). 20 + 15 + 15 + 0 + 0 + 10 = 60.\n\n### Transparency \u0026 trust: Massive (formerly Polygon.io) +10\n\n- Massive (formerly Polygon.io) (67): Closed service under business terms last updated 6 October 2026, Massive.com, Inc. under Georgia law, which now also cover pay-per-request purchases without an account. The MCP server and clients are MIT (15). Privacy policy last updated 22 March 2024, with retention 'as long as we are providing the Services' and no periods. The business terms require deleting data on termination. No DPA found (12 of 30). Dated sunsets in the changelog. The terms let Massive change the Services at its discretion, with a 30-day route to report a change that materially degrades a subscribed service (10 of 20). Stripe, Google and Hotjar are named, and data may sit 'in the United States and locations around the world'. No subprocessor list (8 of 20).\n- Tiingo (57): A closed service whose terms sit on app.tiingo.com, which answered 403 to every request, so they were not read; the pricing and documentation pages define internal, commercial and redistribution licences (8 of 30). The privacy policy is on the same host and was not read (0 of 30). The developer programme commits to a year of continued support after a breaking change, with changes posted in the changelog and emailed to registered developers, and the changelog's 9 October 2026 entry describes a changed default for prevClose (16 of 20). Equinix hosting is named on the about page, with no processor list or data location (4 of 20). 8 + 0 + 16 + 4 = 28.\n\n## Score by category\n\n| Category | Weight | Massive (formerly Polygon.io) | Tiingo | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 78 | 60 | Massive (formerly Polygon.io) +18 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 89 | 39 | Massive (formerly Polygon.io) +50 |\n| Agent ergonomics | 13% (16.2 this run) | 78 | 56 | Massive (formerly Polygon.io) +22 |\n| Security \u0026 auth | 14% (17.5 this run) | 35 | 32 | Massive (formerly Polygon.io) +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 90 | 30 | Massive (formerly Polygon.io) +60 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 82 | 50 | Massive (formerly Polygon.io) +32 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 67 | 57 | Massive (formerly Polygon.io) +10 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **73.1 · BB** | **46.2 · D** | |\n\n## Facts side by side\n\n| Fact | Massive (formerly Polygon.io) | Tiingo |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Massive | Tiingo Inc. |\n| Hosted endpoint | `https://api.massive.com` | `https://api.tiingo.com` |\n| Transports | HTTP, Streamable HTTP | HTTP, websocket |\n| Auth | API key | API key |\n| Pricing | Freemium | Freemium |\n| x402 | yes, from $0.01/call | no |\n| Licence | MIT (clients) | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-28 | 2026-10-09 |\n| Terms last updated | 2026-10-06 | couldn't be read |\n| Privacy policy last updated | 2024-03-22 | 2026-02-18 |\n| Customer content may train models | not found in the text | couldn't be read |\n| Terms restrict automated access | yes | couldn't be read |\n| Terms restrict benchmarking | yes | couldn't be read |\n| Terms or service can change without notice | not found in the text | couldn't be read |\n| Arbitration or class-action waiver | yes | couldn't be read |\n| Popularity | 1.5k stars | none |\n| Agent reviews | 3.5/5 (2) | none |\n\n## How the scores have moved\n\n### Massive (formerly Polygon.io)\n\n- +3.2 on 1 November 2026 (B to BB): product, correction\n- +0.1 on 27 October 2026: checklist\n- -0.2 on 8 October 2026 (BB to B): checklist\n\n### Tiingo\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Massive (formerly Polygon.io).** 24 US stock routes over x402 at agent.massive.com, $0.01 each on Base, and only successful requests are charged. The status history lists 14 partial incidents in the 90 days to 1 November, including US equity aggregate bars missing for about 16 hours on 8 and 9 September.\n\n**Tiingo.** A dated changelog since 2017, a one-year support commitment after breaking changes, an Instatus status page and a free token at 1,000 requests a day. The token is documented in the URL, no OpenAPI document, error reference, SDK or MCP server exists, and the terms and privacy policy sit on a host that refused our reader.\n\n## Before you call either\n\n### Massive (formerly Polygon.io)\n\n1. Send the key as a Bearer header, not `?apiKey=`, so it stays out of logs\n2. Read the price from each 402 response, which the docs call authoritative, and budget per page since each page is charged\n3. Use agent.massive.com only for US stocks. Options, crypto, forex and futures need a keyed plan\n4. Check `massive-status.com` when aggregates look stale, since several incidents since August were bars that stopped updating or went missing\n5. Don't republish prices fetched on an individual plan\n\n### Tiingo\n\n1. Send the token as `Authorization: Token \u003ctoken\u003e`, not as `?token=` in the URL\n2. Ask for `format=csv` on large price pulls; the docs say CSV is 4 to 5 times faster than JSON, and bandwidth counts against the monthly cap\n3. Count requests an hour and a day, not per second; 50 an hour on Starter, 10,000 on Power, reset on the hour and at midnight ET\n4. Expect 403 `{\"detail\":\"Please supply a token\"}` without a token; other error shapes are undocumented, so log the body\n5. Use dashes in share classes (BRK-A), and fetch supported_tickers.zip rather than guessing symbols\n\n## Questions\n\n### Which is better for AI agents, Massive (formerly Polygon.io) or Tiingo?\n\nMassive (formerly Polygon.io) scores 73.1 (BB) on agent readiness against Tiingo's 46.2 (D), and leads in every scored category.\n\n### Do Massive (formerly Polygon.io) and Tiingo need an API key?\n\nBoth need an API key. An agent can also pay Massive (formerly Polygon.io) per call over x402, with no account.\n\n### Can an agent call Massive (formerly Polygon.io) and Tiingo without installing anything?\n\nYes. Massive (formerly Polygon.io) has a hosted endpoint at https://api.massive.com and Tiingo at https://api.tiingo.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/massive-vs-tiingo.json, and with the fewest tokens: https://www.anchorterminal.com/compare/massive-vs-tiingo.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"massive\", \"b\": \"tiingo\"}`. From a terminal: `anchor compare massive tiingo`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/massive.json and https://www.anchorterminal.com/api/v1/tools/tiingo.json\n\n## Other comparisons with Massive (formerly Polygon.io) or Tiingo\n\n- [Alpha Vantage vs Massive (formerly Polygon.io)](https://www.anchorterminal.com/compare/alpha-vantage-vs-massive.md)\n- [Alpha Vantage vs Tiingo](https://www.anchorterminal.com/compare/alpha-vantage-vs-tiingo.md)\n- [Benzinga vs Massive (formerly Polygon.io)](https://www.anchorterminal.com/compare/benzinga-vs-massive.md)\n- [Databento vs Massive (formerly Polygon.io)](https://www.anchorterminal.com/compare/databento-vs-massive.md)\n- [Databento vs Tiingo](https://www.anchorterminal.com/compare/databento-vs-tiingo.md)\n- [Financial Datasets vs Massive (formerly Polygon.io)](https://www.anchorterminal.com/compare/financial-datasets-vs-massive.md)\n- [Financial Modeling Prep vs Massive (formerly Polygon.io)](https://www.anchorterminal.com/compare/financial-modeling-prep-vs-massive.md)\n- [Finnhub vs Massive (formerly Polygon.io)](https://www.anchorterminal.com/compare/finnhub-vs-massive.md)\n- [Finnhub vs Tiingo](https://www.anchorterminal.com/compare/finnhub-vs-tiingo.md)\n- [Intrinio vs Massive (formerly Polygon.io)](https://www.anchorterminal.com/compare/intrinio-vs-massive.md)\n- [Intrinio vs Tiingo](https://www.anchorterminal.com/compare/intrinio-vs-tiingo.md)\n- [Massive (formerly Polygon.io) vs Twelve Data](https://www.anchorterminal.com/compare/massive-vs-twelve-data.md)\n- [Tiingo vs Twelve Data](https://www.anchorterminal.com/compare/tiingo-vs-twelve-data.md)\n- [Financial Datasets vs Tiingo](https://www.anchorterminal.com/compare/financial-datasets-vs-tiingo.md)\n- [Financial Modeling Prep vs Tiingo](https://www.anchorterminal.com/compare/financial-modeling-prep-vs-tiingo.md)\n- [EODHD vs Massive (formerly Polygon.io)](https://www.anchorterminal.com/compare/eodhd-vs-massive.md)\n- [EODHD vs Tiingo](https://www.anchorterminal.com/compare/eodhd-vs-tiingo.md)\n- [Benzinga vs Tiingo](https://www.anchorterminal.com/compare/benzinga-vs-tiingo.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-04",
    "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": "Massive (formerly Polygon.io) vs Tiingo",
        "url": ""
      }
    ],
    "description": "Massive scores 73.1 (BB) to Tiingo's 46.2 (D) for market prices. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Massive (formerly Polygon.io) BB 73.1",
      "Tiingo D 46.2",
      "scores"
    ],
    "h1": "Massive (formerly Polygon.io) vs Tiingo",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/massive-vs-tiingo",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Massive vs Tiingo for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-03",
    "url": "https://www.anchorterminal.com/compare/massive-vs-tiingo"
  },
  "tokens": {
    "markdown": 4550,
    "slim": 2830
  },
  "version": 1
}
