{
  "data": {
    "a": {
      "slug": "check-payroll",
      "name": "Check",
      "vendor": "Check Technologies, Inc.",
      "vendorUrl": "https://www.checkhq.com",
      "kind": "http-api",
      "category": "payroll",
      "summary": "Check is an embedded payroll API from Check Technologies in New York. Software platforms build US payroll on it for their own customers, with tax calculation, payment and filing handled by Check. Access is by partner agreement.",
      "url": "https://www.anchorterminal.com/tools/check-payroll",
      "markdownUrl": "https://www.anchorterminal.com/tools/check-payroll.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/check-payroll.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/check-payroll.json",
      "repo": "https://github.com/check-technologies/mcp-server-check",
      "license": "Proprietary service under Check's terms of service and partner agreement. The MCP server and CLI on GitHub are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.checkhq.com",
      "packages": [],
      "auth": "mixed",
      "authNotes": "A partner API key sent as `Authorization: Bearer`, one for sandbox and one for production, issued by Check after a request through its sales contact. The key carries the whole partner account, with no per-key scopes found. Check says unused keys expire, last activity is shown and IP restrictions can be set through the account team. Integration partners get OAuth tokens (authorisation code grant, with refresh tokens) limited to one employer and one permission level, after a Check partner authorises them. The hosted MCP server accepts the API key or a Console OAuth login that runs with the Console user's permissions. This listing grades embedded-payroll partner access. Check has no route to an existing employer's payroll account outside a partner platform.",
      "pricing": "paid",
      "pricingNotes": "No public prices. checkhq.com/pricing returns 404 and the site's buttons open a sales contact form. A sandbox exists at sandbox.checkhq.com under a Sandbox User Agreement, but the documentation says to request an API key from Check, so an agent can't start without a person contacting sales. Production needs a partner agreement. The Usage API reports billable companies, employees and contractors each month, with no unit price published (checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the documentation index, the API reference pages read or the website (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 18,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.checkhq.com",
      "llmsTxt": "https://docs.checkhq.com/llms.txt",
      "capabilities": [
        "payroll.run",
        "payroll.employees",
        "payroll.embedded",
        "payroll.tax-filing",
        "payroll.contractors"
      ],
      "tags": [
        "hosted",
        "embedded-payroll",
        "us-payroll",
        "api-key",
        "oauth",
        "mcp",
        "llms-txt",
        "sandbox",
        "webhooks",
        "sales-led",
        "partner-approval",
        "status-page",
        "bug-bounty",
        "soc2"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.5,
        "grade": "B",
        "agentReady": false,
        "rank": 193,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 72,
          "payments": 5,
          "reliability": 80,
          "schema": 78,
          "security": 74,
          "transparency": 62
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Graded as embedded payroll through a partner API key, not access to an existing employer's payroll account. The API has idempotency keys on writes, a required preview before approval and queryable request logs. No price is public, a sandbox key comes through Check's sales team, and one API key carries the whole partner account.",
        "bestFor": "A software platform that wants to sell US payroll inside its own product and can sign a partnership, with Check handling tax calculation, money movement and filings.",
        "strengths": [
          "`X-Idempotency-Key` is accepted on writes and stored for 24 hours, and a 429 carries `Retry-After` with `RateLimit-Limit` and `RateLimit-Remaining` on every authenticated response",
          "A payroll must have a succeeded preview before approval, and `preview_started_at` makes approval fail with 409 `preview_superseded` if the preview is stale",
          "Every response carries `X-Request-Log-Id`, and GET /logs returns request logs with SSNs, bank account numbers and the `Authorization` header redacted",
          "The MCP server starts with three meta-tools over 270 tools, with read-only mode, toolset filters and optional confirmation for destructive tools",
          "llms.txt indexes the documentation, and each page is served as Markdown with an OpenAPI 3.1 fragment per operation"
        ],
        "weaknesses": [
          "No public price and no self-serve signup. The documentation says to request an API key through Check's sales contact",
          "An API key carries the whole partner account. No per-key scopes or read-only keys were found in the reviewed documentation",
          "No official SDK in a general programming language was found. The CLI and MCP server install from a git clone, not from PyPI",
          "No SLA is published. The terms of service make no representation about uptime unless agreed in writing",
          "No sub-processor list, hosting location or published DPA text was found, and the privacy policy states no retention periods"
        ],
        "agentNotes": [
          "Use https://sandbox.checkhq.com with the sandbox key and https://api.checkhq.com with the production key. A key is not valid across environments",
          "Preview a payroll before approving it, then pass `preview_started_at` to POST /payrolls/{id}/approve so a stale preview fails with 409",
          "Send `X-Idempotency-Key` on every write. Keys expire after 24 hours, so list the resource before retrying later than that",
          "On 429 wait for `Retry-After`. The limit is 10 requests a second in sandbox and for partners paying fewer than 1,000 payees a month, with 100 concurrent requests",
          "Connect the MCP server with `?read_only=true` or `X-MCP-Readonly: true` unless writes are intended. In production, approving a payroll moves money"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.5
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 72,
          "payments": 5,
          "reliability": 80,
          "schema": 78,
          "security": 74,
          "transparency": 38
        },
        "provenanceScore": 86
      },
      "connect": {
        "http": "curl -X POST https://sandbox.checkhq.com/companies \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Bearer \u003cAPI_KEY\u003e' \\\n  -d '{\"address\": {\"line1\": \"20 W 34th St\", \"postal_code\": \"10001\", \"city\": \"New York\", \"state\": \"NY\"}, \"start_date\": \"2020-05-20\", \"trade_name\": \"Good Web Design\", \"legal_name\": \"Good Web Design, Inc.\"}'",
        "claudeCode": "claude mcp add --transport http check https://mcp.sandbox.checkhq.com/check/mcp \\\n  --header \"Authorization: Bearer your-api-key-here\"",
        "config": {
          "mcpServers": {
            "check": {
              "type": "url",
              "url": "https://mcp.sandbox.checkhq.com/check/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/payroll.run",
        "tool": "https://letme.dev/check-payroll"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Check Technologies, Inc.",
        "domain": "checkhq.com",
        "domainRegistered": "2006-10-28",
        "endpointOnVendorDomain": true,
        "terms": "https://www.checkhq.com/company/terms",
        "privacy": "https://www.checkhq.com/company/privacy",
        "statusPage": "https://status.checkhq.com",
        "changelog": "https://www.checkhq.com/resources/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The privacy policy (effective 18 April 2024) names Check Technologies, Inc., 228 Park Ave. S, PMB 14961, New York, NY 10003. The site footer also names Check Payments LLC (NMLS #2103307).",
          "The terms of service are dated 3 September 2021. Sandbox use is also governed by a Sandbox User Agreement at checkhq.com/company/sandbox-user-agreement.",
          "www.checkhq.com/.well-known/security.txt and checkhq.com/.well-known/security.txt return 404. The security page sends vulnerability reports to a bug bounty at federacy.com/check.",
          "The API answers at api.checkhq.com and sandbox.checkhq.com, and the hosted MCP server at mcp.checkhq.com and mcp.sandbox.checkhq.com.",
          "RDAP for checkhq.com gives a registration date of 2006-10-28 and Squarespace Domains II LLC as registrar."
        ],
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/check-payroll.json",
      "live": {
        "slug": "check-payroll",
        "probe": {
          "target": "https://api.checkhq.com",
          "method": "get",
          "lastAt": "2026-10-08T18:20:27.369539666Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 728,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 713,
          "p95ms24h": 1040,
          "samples24h": 33,
          "samples30d": 33,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 33,
              "ok": 33
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.checkhq.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T18:21:51.444804045Z"
        },
        "githubStars": 18,
        "securityTxt": {
          "url": "https://checkhq.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:31.878118114Z"
        },
        "updatedAt": "2026-10-08T18:21:51.444804045Z"
      }
    },
    "answer": "Check scores 67.5 (B) on agent readiness against Gusto's 63.3 (B), and leads in 4 of 7 scored categories. Gusto leads on schema \u0026 documentation and payments \u0026 pricing.",
    "b": {
      "slug": "gusto",
      "name": "Gusto",
      "vendor": "Gusto, Inc.",
      "vendorUrl": "https://gusto.com",
      "kind": "http-api",
      "category": "payroll",
      "summary": "Gusto Embedded Payroll is a REST API for running US payroll inside another product, covering company and worker onboarding, payroll calculation and submission, tax filing and contractor payments. Production access needs a partnership with Gusto. A demo environment is self-serve.",
      "url": "https://www.anchorterminal.com/tools/gusto",
      "markdownUrl": "https://www.anchorterminal.com/tools/gusto.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/gusto.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/gusto.json",
      "repo": "https://github.com/Gusto/gusto-typescript-client",
      "license": "Proprietary service under Gusto's API Policy and Developer Terms of Service. The API clients on GitHub are MIT, and the React SDK and the Gusto CLI are Apache-2.0",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@gusto/embedded-api"
        },
        {
          "registry": "npm",
          "name": "@gusto/embedded-react-sdk"
        },
        {
          "registry": "pypi",
          "name": "gusto-embedded"
        }
      ],
      "auth": "oauth",
      "authNotes": "Graded on the Embedded Payroll API, which needs a partnership. A developer signs up at dev.gusto.com, creates an organisation and an application, and gets a client ID and secret for the demo environment. POST /oauth/token with `grant_type` system_access returns a two-hour system token for partner-level calls, and creating a partner-managed company returns an access and refresh token pair for that company alone. Scopes are assigned by Gusto, and production keys follow commercial, security and implementation reviews. Access to an existing employer's Gusto account is separate. Partner apps use the App Integrations API with the OAuth 2.0 authorisation code grant after Production Pre-Approval and a security review. A customer's own company is reached through the Gusto CLI or the Gusto MCP server, which sign in by OAuth with dynamic client registration and PKCE.",
      "pricing": "paid",
      "pricingNotes": "No price could be read. gusto.com and embedded.gusto.com answered our reader with a bot check, and the developer docs carry no figures. The introduction says commercial conversations are required before production, and an invoices endpoint returns the active companies used to calculate a partner's invoice. The demo environment is open to any developer with a Developer Portal account, with generated demo companies and no contract (checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, the API reference or the llms.txt index (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 2,
        "npmWeekly": 24731,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.gusto.com/embedded-payroll/docs/introduction",
      "llmsTxt": "https://docs.gusto.com/llms.txt",
      "capabilities": [
        "payroll.run",
        "payroll.employees",
        "payroll.embedded",
        "payroll.tax-filing",
        "payroll.contractors",
        "hr.onboarding",
        "hr.time-off"
      ],
      "tags": [
        "hosted",
        "payroll",
        "oauth",
        "partner-approval",
        "sandbox",
        "llms-txt",
        "webhooks",
        "typescript",
        "python",
        "java",
        "csharp",
        "ruby",
        "mcp",
        "cli",
        "status-page"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.3,
        "grade": "B",
        "agentReady": false,
        "rank": 283,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 3,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 82,
          "maintenance": 76,
          "payments": 15,
          "reliability": 58,
          "schema": 86,
          "security": 60,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "This listing covers the Embedded Payroll API. Every reference page carries an OpenAPI 3.1 definition, payroll is calculated as a preview before submission, and each API version gets 12 months of deprecation support. Production needs commercial and security approval, no price was readable, and the status page lists 11 incidents between 14 July and 5 October 2026, five marked major.",
        "bestFor": "A software platform that wants to run US payroll for its own customers and can pass Gusto's partner reviews.",
        "strengths": [
          "Each of 317 reference pages serves an OpenAPI 3.1 definition as Markdown, and llms.txt indexes both documentation projects",
          "Payroll runs in steps (prepare, calculate, submit). Calculate returns a preview with `submission_blockers` before any money moves",
          "Each API version gets 12 months of phased support after deprecation, with dates published and `Deprecation`, `Sunset` and `Link` response headers",
          "Company access tokens work for one company only, expire after two hours and rotate the refresh token on use",
          "Rate limit of 200 requests a minute per application and user, with `Retry-After` and `X-RateLimit-*` headers on responses"
        ],
        "weaknesses": [
          "Production keys need commercial, security and implementation reviews with Gusto's partnerships team, and the docs say not all use cases are supported",
          "The Embedded API status page lists 11 incidents between 14 July and 5 October 2026, five marked major, one titled a complete outage",
          "No price was readable. gusto.com and embedded.gusto.com answered our reader with a bot check, and the docs carry no figures",
          "Idempotency keys were found only on the People Batch endpoint. Other POST calls rely on the caller not repeating them",
          "The five API clients are labelled beta, and the README warns of breaking changes without notice"
        ],
        "agentNotes": [
          "Develop against https://api.gusto-demo.com. Production at https://api.gusto.com needs keys Gusto issues after its reviews",
          "Send `X-Gusto-API-Version: 2026-06-15` on every call. Without it the application's minimum version applies",
          "Send the resource's current `version` with every PUT, and only the fields to change. A stale version returns 409",
          "Calculate and submit return 202. Poll GET on the payroll until `calculated_at` is set or the status is processed, and read `submission_blockers` first",
          "For a company already on Gusto, the Embedded API is the wrong route. Use the Gusto CLI or the MCP server at https://mcp.api.gusto.com, which draft payroll but can't submit it"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.3
          }
        ],
        "editorialScores": {
          "ergonomics": 82,
          "maintenance": 76,
          "payments": 15,
          "reliability": 58,
          "schema": 86,
          "security": 60,
          "transparency": 44
        },
        "provenanceScore": 77
      },
      "connect": {
        "install": "npm add @gusto/embedded-api",
        "http": "curl --location --request POST 'https://api.gusto-demo.com/oauth/token' \\\n--header 'Content-Type: application/json' \\\n--data-raw '{\n  \"client_id\": \"{{client_id}}\",\n  \"client_secret\": \"{{client_secret}}\",\n  \"grant_type\": \"system_access\"\n}'"
      },
      "letme": {
        "capability": "https://letme.dev/payroll.run",
        "tool": "https://letme.dev/gusto"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Gusto, Inc.",
        "domain": "gusto.com",
        "domainRegistered": "1995-08-23",
        "endpointOnVendorDomain": true,
        "terms": "https://gusto.com/about/terms/developer-terms-of-service",
        "privacy": "",
        "statusPage": "https://gustoapi.statuspage.io",
        "changelog": "https://docs.gusto.com/embedded-payroll/changelog",
        "securityTxt": "unknown",
        "checked": "2026-10-08",
        "notes": [
          "The NOTICE file in Gusto/gusto-cli reads Copyright 2026 Gusto, Inc.",
          "Production calls go to https://api.gusto.com. The demo environment is on a separate domain, api.gusto-demo.com.",
          "The terms URL is the one named in the OpenAPI definitions on the reference pages. gusto.com answered our reader with a bot check, so the terms, the privacy policy and /.well-known/security.txt weren't read.",
          "The API Policy published in the docs is dated 11 July 2022 and refers to Gusto's Privacy Policy without a readable link.",
          "RDAP for gusto.com gives a registration date of 1995-08-23.",
          "The docs embed https://gustoapi.statuspage.io as the API status page. status.gusto.com covers the Gusto product and also lists an API component."
        ],
        "score": 77
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/gusto.json",
      "live": {
        "slug": "gusto",
        "vendorStatus": {
          "page": "https://gustoapi.statuspage.io",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T18:22:03.211139548Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Gusto/gusto-typescript-client",
            "version": "gusto_embedded_v_2025_11_15/v0.3.2",
            "released": "2026-10-01",
            "seenAt": "2026-10-08T16:15:29.553541966Z"
          },
          {
            "registry": "npm",
            "name": "@gusto/embedded-api",
            "version": "0.16.2",
            "seenAt": "2026-10-08T16:15:25.588820008Z"
          },
          {
            "registry": "npm",
            "name": "@gusto/embedded-react-sdk",
            "version": "0.56.5",
            "seenAt": "2026-10-08T16:15:29.142122622Z"
          },
          {
            "registry": "pypi",
            "name": "gusto-embedded",
            "version": "0.2.4",
            "released": "2025-04-16",
            "seenAt": "2026-10-08T16:15:29.349450484Z"
          }
        ],
        "githubStars": 2,
        "npmWeekly": 24731,
        "pypiWeekly": 104,
        "securityTxt": {
          "url": "https://gusto.com/.well-known/security.txt",
          "state": "unknown",
          "checkedAt": "2026-10-08T15:38:35.992448629Z"
        },
        "pages": [
          {
            "url": "https://docs.gusto.com/embedded-payroll/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:18:50.184946965Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "fb0136facdba"
          },
          {
            "url": "https://gusto.com/about/terms/developer-terms-of-service",
            "kind": "terms",
            "status": 403,
            "checkedAt": "2026-10-08T18:20:46.783185211Z",
            "changedAt": "0001-01-01T00:00:00Z"
          }
        ],
        "updatedAt": "2026-10-08T18:22:03.211139548Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Check Technologies, Inc.",
        "b": "Gusto, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://api.checkhq.com",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Check's terms of service and partner agreement. The MCP server and CLI on GitHub are MIT",
        "b": "Proprietary service under Gusto's API Policy and Developer Terms of Service. The API clients on GitHub are MIT, and the React SDK and the Gusto CLI are Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-07",
        "b": "2026-10-01",
        "name": "Last release"
      },
      {
        "a": "2021-09-03",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "2024-04-18",
        "b": "no document linked",
        "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": "not found in the text",
        "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": "not found in the text",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "18 stars",
        "b": "2 stars, 25k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Check scores 67.5 (B) on agent readiness against Gusto's 63.3 (B), and leads in 4 of 7 scored categories. Gusto leads on schema \u0026 documentation and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Check or Gusto?"
      },
      {
        "answer": "Check takes an API key or an OAuth sign-in. Gusto uses an OAuth sign-in.",
        "question": "Do Check and Gusto need an API key?"
      },
      {
        "answer": "Check has a hosted endpoint at https://api.checkhq.com. No hosted endpoint is listed for Gusto.",
        "question": "Can an agent call Check and Gusto without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 80 against 58",
          "Security \u0026 auth, 74 against 60"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "A software platform that wants to sell US payroll inside its own product and can sign a partnership, with Check handling tax calculation, money movement and filings.",
        "slug": "check-payroll",
        "watchFor": "No public price and no self-serve signup. The documentation says to request an API key through Check's sales contact"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 86 against 78",
          "Payments \u0026 pricing, 15 against 5"
        ],
        "also": null,
        "goodFor": "A software platform that wants to run US payroll for its own customers and can pass Gusto's partner reviews.",
        "slug": "gusto",
        "watchFor": "Production keys need commercial, security and implementation reviews with Gusto's partnerships team, and the docs say not all use cases are supported"
      }
    ],
    "job": {
      "capability": "payroll.run",
      "name": "Payroll run"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-salsa.json",
        "title": "Check vs Salsa",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-salsa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-zeal.json",
        "title": "Check vs Zeal",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-zeal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gusto-vs-salsa.json",
        "title": "Gusto vs Salsa",
        "url": "https://www.anchorterminal.com/compare/gusto-vs-salsa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gusto-vs-zeal.json",
        "title": "Gusto vs Zeal",
        "url": "https://www.anchorterminal.com/compare/gusto-vs-zeal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-finch.json",
        "title": "Check vs Finch",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-finch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finch-vs-gusto.json",
        "title": "Finch vs Gusto",
        "url": "https://www.anchorterminal.com/compare/finch-vs-gusto"
      }
    ],
    "scores": [
      {
        "by": 22,
        "check-payroll": 80,
        "edge": "check-payroll",
        "gusto": 58,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 8,
        "check-payroll": 78,
        "edge": "gusto",
        "gusto": 86,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 1,
        "check-payroll": 83,
        "edge": "check-payroll",
        "gusto": 82,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 14,
        "check-payroll": 74,
        "edge": "check-payroll",
        "gusto": 60,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 10,
        "check-payroll": 5,
        "edge": "gusto",
        "gusto": 15,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 4,
        "check-payroll": 72,
        "edge": "gusto",
        "gusto": 76,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 1,
        "check-payroll": 62,
        "edge": "check-payroll",
        "gusto": 61,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Check scores 67.5 (B) on agent readiness against Gusto's 63.3 (B), and leads in 4 of 7 scored categories. Gusto leads on schema \u0026 documentation and payments \u0026 pricing. Both do payroll run.",
    "verdicts": {
      "check-payroll": "Graded as embedded payroll through a partner API key, not access to an existing employer's payroll account. The API has idempotency keys on writes, a required preview before approval and queryable request logs. No price is public, a sandbox key comes through Check's sales team, and one API key carries the whole partner account.",
      "gusto": "This listing covers the Embedded Payroll API. Every reference page carries an OpenAPI 3.1 definition, payroll is calculated as a preview before submission, and each API version gets 12 months of deprecation support. Production needs commercial and security approval, no price was readable, and the status page lists 11 incidents between 14 July and 5 October 2026, five marked major."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/check-payroll-vs-gusto",
    "json": "https://www.anchorterminal.com/compare/check-payroll-vs-gusto.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/check-payroll-vs-gusto.md",
    "slim": "https://www.anchorterminal.com/compare/check-payroll-vs-gusto.min.md"
  },
  "markdown": "Check scores 67.5 (B) on agent readiness against Gusto's 63.3 (B), and leads in 4 of 7 scored categories. Gusto leads on schema \u0026 documentation and payments \u0026 pricing. Both do payroll run.\n\n- Check: grade B, 67.5/100, rank #193 of 629. Markdown https://www.anchorterminal.com/tools/check-payroll.md · JSON https://www.anchorterminal.com/api/v1/tools/check-payroll.json\n- Gusto: grade B, 63.3/100, rank #283 of 629. Markdown https://www.anchorterminal.com/tools/gusto.md · JSON https://www.anchorterminal.com/api/v1/tools/gusto.json\n\n## Which one, for what\n\n### Check (B)\n\nGood for: A software platform that wants to sell US payroll inside its own product and can sign a partnership, with Check handling tax calculation, money movement and filings.\n\nAhead on:\n- Reliability, 80 against 58\n- Security \u0026 auth, 74 against 60\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No public price and no self-serve signup. The documentation says to request an API key through Check's sales contact\n\n### Gusto (B)\n\nGood for: A software platform that wants to run US payroll for its own customers and can pass Gusto's partner reviews.\n\nAhead on:\n- Schema \u0026 documentation, 86 against 78\n- Payments \u0026 pricing, 15 against 5\n\nWatch for: Production keys need commercial, security and implementation reviews with Gusto's partnerships team, and the docs say not all use cases are supported\n\n\n## Score by category\n\n| Category | Weight | Check | Gusto | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 58 | Check +22 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 78 | 86 | Gusto +8 |\n| Agent ergonomics | 13% (16.2 this run) | 83 | 82 | Check +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 74 | 60 | Check +14 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 5 | 15 | Gusto +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 72 | 76 | Gusto +4 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 62 | 61 | Check +1 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **67.5 · B** | **63.3 · B** | |\n\n## Facts side by side\n\n| Fact | Check | Gusto |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Check Technologies, Inc. | Gusto, Inc. |\n| Hosted endpoint | `https://api.checkhq.com` | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | OAuth or key | OAuth |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under Check's terms of service and partner agreement. The MCP server and CLI on GitHub are MIT | Proprietary service under Gusto's API Policy and Developer Terms of Service. The API clients on GitHub are MIT, and the React SDK and the Gusto CLI are Apache-2.0 |\n| Read-only variant documented | yes | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-07 | 2026-10-01 |\n| Terms last updated | 2021-09-03 | couldn't be read |\n| Privacy policy last updated | 2024-04-18 | no document linked |\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 | not found in the text | 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 | not found in the text | couldn't be read |\n| Popularity | 18 stars | 2 stars, 25k npm/wk |\n\n## Verdicts\n\n**Check.** Graded as embedded payroll through a partner API key, not access to an existing employer's payroll account. The API has idempotency keys on writes, a required preview before approval and queryable request logs. No price is public, a sandbox key comes through Check's sales team, and one API key carries the whole partner account.\n\n**Gusto.** This listing covers the Embedded Payroll API. Every reference page carries an OpenAPI 3.1 definition, payroll is calculated as a preview before submission, and each API version gets 12 months of deprecation support. Production needs commercial and security approval, no price was readable, and the status page lists 11 incidents between 14 July and 5 October 2026, five marked major.\n\n## Before you call either\n\n### Check\n\n1. Use https://sandbox.checkhq.com with the sandbox key and https://api.checkhq.com with the production key. A key is not valid across environments\n2. Preview a payroll before approving it, then pass `preview_started_at` to POST /payrolls/{id}/approve so a stale preview fails with 409\n3. Send `X-Idempotency-Key` on every write. Keys expire after 24 hours, so list the resource before retrying later than that\n4. On 429 wait for `Retry-After`. The limit is 10 requests a second in sandbox and for partners paying fewer than 1,000 payees a month, with 100 concurrent requests\n5. Connect the MCP server with `?read_only=true` or `X-MCP-Readonly: true` unless writes are intended. In production, approving a payroll moves money\n\n### Gusto\n\n1. Develop against https://api.gusto-demo.com. Production at https://api.gusto.com needs keys Gusto issues after its reviews\n2. Send `X-Gusto-API-Version: 2026-06-15` on every call. Without it the application's minimum version applies\n3. Send the resource's current `version` with every PUT, and only the fields to change. A stale version returns 409\n4. Calculate and submit return 202. Poll GET on the payroll until `calculated_at` is set or the status is processed, and read `submission_blockers` first\n5. For a company already on Gusto, the Embedded API is the wrong route. Use the Gusto CLI or the MCP server at https://mcp.api.gusto.com, which draft payroll but can't submit it\n\n## Questions\n\n### Which is better for AI agents, Check or Gusto?\n\nCheck scores 67.5 (B) on agent readiness against Gusto's 63.3 (B), and leads in 4 of 7 scored categories. Gusto leads on schema \u0026 documentation and payments \u0026 pricing.\n\n### Do Check and Gusto need an API key?\n\nCheck takes an API key or an OAuth sign-in. Gusto uses an OAuth sign-in.\n\n### Can an agent call Check and Gusto without installing anything?\n\nCheck has a hosted endpoint at https://api.checkhq.com. No hosted endpoint is listed for Gusto.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/check-payroll-vs-gusto.json, and with the fewest tokens: https://www.anchorterminal.com/compare/check-payroll-vs-gusto.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"check-payroll\", \"b\": \"gusto\"}`. From a terminal: `anchor compare check-payroll gusto`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/check-payroll.json and https://www.anchorterminal.com/api/v1/tools/gusto.json\n\n## Other comparisons with Check or Gusto\n\n- [Check vs Salsa](https://www.anchorterminal.com/compare/check-payroll-vs-salsa.md)\n- [Check vs Zeal](https://www.anchorterminal.com/compare/check-payroll-vs-zeal.md)\n- [Gusto vs Salsa](https://www.anchorterminal.com/compare/gusto-vs-salsa.md)\n- [Gusto vs Zeal](https://www.anchorterminal.com/compare/gusto-vs-zeal.md)\n- [Check vs Finch](https://www.anchorterminal.com/compare/check-payroll-vs-finch.md)\n- [Finch vs Gusto](https://www.anchorterminal.com/compare/finch-vs-gusto.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Check vs Gusto",
        "url": ""
      }
    ],
    "description": "Check scores 67.5 (B) on agent readiness against Gusto's 63.3 (B), and leads in 4 of 7 scored categories. Gusto leads on schema \u0026 documentation and payments \u0026 pricing. Both do payroll run. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Check B 67.5",
      "Gusto B 63.3",
      "scores"
    ],
    "h1": "Check vs Gusto",
    "image": "https://www.anchorterminal.com/assets/og/compare-check-payroll-vs-gusto.png",
    "path": "/compare/check-payroll-vs-gusto",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Check vs Gusto for AI agents, B 67.5 vs B 63.3 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/check-payroll-vs-gusto"
  },
  "tokens": {
    "markdown": 2000,
    "slim": 730
  },
  "version": 1
}
