{
  "data": {
    "a": {
      "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": 399,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 4,
        "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-10T02:50:22.515243765Z"
        },
        "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-09T16:57:23.266192962Z"
          },
          {
            "registry": "npm",
            "name": "@gusto/embedded-api",
            "version": "0.16.2",
            "seenAt": "2026-10-09T16:57:20.857956742Z"
          },
          {
            "registry": "npm",
            "name": "@gusto/embedded-react-sdk",
            "version": "0.56.5",
            "seenAt": "2026-10-09T16:57:21.749140262Z"
          },
          {
            "registry": "pypi",
            "name": "gusto-embedded",
            "version": "0.2.4",
            "released": "2025-04-16",
            "seenAt": "2026-10-09T16:57:23.0758288Z"
          }
        ],
        "githubStars": 2,
        "npmWeekly": 6989,
        "pypiWeekly": 121,
        "securityTxt": {
          "url": "https://gusto.com/.well-known/security.txt",
          "state": "unknown",
          "checkedAt": "2026-10-09T15:40:23.30765161Z"
        },
        "llmsTxt": {
          "url": "https://docs.gusto.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-09T14:02:06.939515794Z"
        },
        "pages": [
          {
            "url": "https://docs.gusto.com/embedded-payroll/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:37:26.760632223Z",
            "changedAt": "2026-10-09T18:37:26.760632223Z",
            "fingerprint": "fdbe636ab9b1"
          },
          {
            "url": "https://gusto.com/about/terms/developer-terms-of-service",
            "kind": "terms",
            "status": 403,
            "checkedAt": "2026-10-09T18:40:01.681339044Z",
            "changedAt": "0001-01-01T00:00:00Z"
          }
        ],
        "updatedAt": "2026-10-10T02:50:22.515243765Z"
      }
    },
    "answer": "Gusto scores 63.3 (B) on agent readiness against PayFit's 55.5 (C), and leads in 5 of 7 scored categories. PayFit leads on reliability and transparency \u0026 trust.",
    "b": {
      "slug": "payfit",
      "name": "PayFit",
      "vendor": "PayFit SAS",
      "vendorUrl": "https://payfit.com",
      "kind": "http-api",
      "category": "payroll",
      "summary": "PayFit is payroll and HR software for small and mid-sized employers in France, the United Kingdom and Spain. Its Partner API reads employees, contracts, payslips, absences and accounting exports, with a customer API key or partner OAuth.",
      "url": "https://www.anchorterminal.com/tools/payfit",
      "markdownUrl": "https://www.anchorterminal.com/tools/payfit.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/payfit.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/payfit.json",
      "license": "Proprietary service under PayFit's general terms of service",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "mixed",
      "authNotes": "Two routes. A customer's company admin creates an API key in the PayFit app at app.payfit.com/integrations/hub/api, picks its scopes, and sees it once. It is sent as a Bearer token and reaches that company only. Partners use the OAuth 2.0 authorisation code grant at oauth.payfit.com with a client ID and secret that PayFit issues after reviewing the use case, and the scopes a partner may request are fixed at approval. The partner guides say PayFit is temporarily not accepting new integration requests.",
      "pricing": "paid",
      "pricingNotes": "No charge for API calls was found. Access comes with a PayFit subscription. In France the API is included from the Paie avancée plan, listed at 27 € a collaborator a month plus a 49 € monthly subscription for 1 to 3 collaborators, before tax. The UK site lists no prices and sends buyers to a demo, and its contract appendix includes API access in the Payroll Core plan. The French site links a free signup and a first month free until 31 October 2026. Whether signup needs a card was not established. A sandbox company is given only to accepted partners (checked 2026-10-09).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API guides, the OpenAPI file or the French pricing page (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://developers.payfit.io/",
      "llmsTxt": "https://developers.payfit.io/llms.txt",
      "openapi": "https://developers.payfit.io/openapi/partner-api.json",
      "capabilities": [
        "payroll.employees",
        "hr.time-off",
        "hr.employees"
      ],
      "tags": [
        "hosted",
        "payroll",
        "hr",
        "api-key",
        "oauth",
        "openapi",
        "llms-txt",
        "webhooks",
        "france",
        "uk",
        "spain",
        "status-page",
        "iso-27001"
      ],
      "lastRelease": "2026-07-23",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 55.5,
        "grade": "C",
        "agentReady": false,
        "rank": 656,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 51,
          "maintenance": 28,
          "payments": 10,
          "reliability": 79,
          "schema": 78,
          "security": 51,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "A public OpenAPI 3.0 file, llms.txt and scoped keys let a paying customer's agent read payroll outputs and write absences. The API cannot run or approve a payroll, new partner integrations are not being accepted, and no idempotency keys or SDKs were found.",
        "bestFor": "An agent working for an employer that already runs payroll on PayFit in France, the UK or Spain and needs employees, contracts, payslips, absences or the payroll journal.",
        "strengths": [
          "Public OpenAPI 3.0 file with 31 operations, each documenting 400, 401, 403 and 404 responses with an example",
          "llms.txt and a Markdown twin for every guide, reference and changelog page",
          "Customer API keys and partner OAuth tokens are limited to chosen scopes from 22, with read and write separate",
          "Rate limits are published as 50 read and 20 write requests a second, with `X-RateLimit` headers on responses",
          "The contract appendix of 15 June 2026 lists sub-processors by purpose and region, and the security page states hosting in France"
        ],
        "weaknesses": [
          "No operation runs, previews or approves a payroll. The API reads payroll status, payslips and accounting exports",
          "The partner guides say PayFit is temporarily not accepting new integration requests, with no reopening date",
          "The webhook guide documents a call that sends `clientSecret` and `clientId` in the URL query string",
          "No idempotency keys, no official SDK and no MCP server were found in the reviewed documentation",
          "Fifteen of 31 operations are France-only and two are UK-only, including contract creation and both accounting exports"
        ],
        "agentNotes": [
          "Have a company admin create the key at app.payfit.com/integrations/hub/api with only the scopes the task needs. The key is shown once",
          "POST the key to `https://oauth.payfit.com/introspect` to get `company_id`, then call `https://partner-api.payfit.com/companies/{companyId}/...`",
          "Page lists with `nextPageToken` and `maxResults`, which defaults to 10 and stops at 50",
          "Check before repeating a failed POST. There is no idempotency key, and `POST /absences` creates an absence that is already validated",
          "A collaborator or contract created through the API stays incomplete until an HR admin finishes it in the PayFit app, and a new contract takes 2 to 5 minutes to appear"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 55.5
          }
        ],
        "editorialScores": {
          "ergonomics": 51,
          "maintenance": 28,
          "payments": 10,
          "reliability": 79,
          "schema": 78,
          "security": 51,
          "transparency": 56
        },
        "provenanceScore": 84
      },
      "connect": {
        "http": "curl --request GET --url https://partner-api.payfit.com/companies/{companyId} --header 'Authorization: Bearer YOUR-API-KEY'"
      },
      "letme": {
        "capability": "https://letme.dev/payroll.employees",
        "tool": "https://letme.dev/payfit"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "PayFit SAS",
        "domain": "payfit.com",
        "domainRegistered": "2006-11-17",
        "endpointOnVendorDomain": true,
        "terms": "https://payfit.com/general-terms-of-service/",
        "privacy": "https://payfit.com/privacy-policy/",
        "statusPage": "https://status.payfit.com",
        "changelog": "https://developers.payfit.io/changelog",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "The French general conditions (last updated 8 September 2026) name Payfit, a société par actions simplifiée registered in Paris under number 813 487 899, at 37-39 avenue Trudaine, 75009 Paris.",
          "The linked terms and privacy policy are the English ones, both last updated 15 June 2026. They name Payfit Ltd, registered in England and Wales under number 11623900, which contracts with UK clients. French clients contract under https://payfit.com/fr/conditions-generales-de-services/.",
          "No separate API terms were found. Clause 1.4 of the terms covers third-party services connected through the Payfit API, and the appendix lists access to the API as a plan item.",
          "The API answers at partner-api.payfit.com and OAuth at oauth.payfit.com. The documentation is on developers.payfit.io, a second domain.",
          "https://payfit.com/.well-known/security.txt returned 404. The security contact page gives security@payfit.com and a PGP key whose stated expiry is 27 August 2026.",
          "RDAP for payfit.com gives a registration date of 2006-11-17 and Gandi SAS as registrar."
        ],
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/payfit.json",
      "live": {
        "slug": "payfit",
        "vendorStatus": {
          "page": "https://status.payfit.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-10T00:51:07.656388577Z"
        },
        "pages": [
          {
            "url": "https://developers.payfit.io/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:36:07.999420808Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1d2fd9ebd502"
          },
          {
            "url": "https://payfit.com/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:43:03.382729135Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "99ea5438a60b"
          },
          {
            "url": "https://payfit.com/general-terms-of-service/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:43:01.261262581Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "816c4583c340"
          }
        ],
        "updatedAt": "2026-10-10T00:51:07.656388577Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Gusto, Inc.",
        "b": "PayFit SAS",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "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",
        "b": "Proprietary service under PayFit's general terms of service",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-01",
        "b": "2026-07-23",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "2026-06-15",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2026-06-15",
        "name": "Privacy policy last updated"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "2 stars, 25k npm/wk",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Gusto scores 63.3 (B) on agent readiness against PayFit's 55.5 (C), and leads in 5 of 7 scored categories. PayFit leads on reliability and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Gusto or PayFit?"
      },
      {
        "answer": "Gusto uses an OAuth sign-in. PayFit takes an API key or an OAuth sign-in.",
        "question": "Do Gusto and PayFit need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Gusto. No hosted endpoint is listed for PayFit.",
        "question": "Can an agent call Gusto and PayFit without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 86 against 78",
          "Agent ergonomics, 82 against 51",
          "Security \u0026 auth, 60 against 51",
          "Payments \u0026 pricing, 15 against 10",
          "Maintenance \u0026 community, 76 against 28"
        ],
        "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"
      },
      {
        "aheadOn": [
          "Reliability, 79 against 58",
          "Transparency \u0026 trust, 70 against 61"
        ],
        "also": null,
        "goodFor": "An agent working for an employer that already runs payroll on PayFit in France, the UK or Spain and needs employees, contracts, payslips, absences or the payroll journal.",
        "slug": "payfit",
        "watchFor": "No operation runs, previews or approves a payroll. The API reads payroll status, payslips and accounting exports"
      }
    ],
    "job": {
      "capability": "payroll.employees",
      "name": "Payroll records"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/argyle-vs-gusto.json",
        "title": "Argyle vs Gusto",
        "url": "https://www.anchorterminal.com/compare/argyle-vs-gusto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/argyle-vs-payfit.json",
        "title": "Argyle vs PayFit",
        "url": "https://www.anchorterminal.com/compare/argyle-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-payfit.json",
        "title": "Check vs PayFit",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/employment-hero-vs-payfit.json",
        "title": "Employment Hero Payroll vs PayFit",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/everee-vs-payfit.json",
        "title": "Everee vs PayFit",
        "url": "https://www.anchorterminal.com/compare/everee-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finch-vs-gusto.json",
        "title": "Finch vs Gusto",
        "url": "https://www.anchorterminal.com/compare/finch-vs-gusto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/finch-vs-payfit.json",
        "title": "Finch vs PayFit",
        "url": "https://www.anchorterminal.com/compare/finch-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gusto-vs-paychex.json",
        "title": "Gusto vs Paychex",
        "url": "https://www.anchorterminal.com/compare/gusto-vs-paychex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paychex-vs-payfit.json",
        "title": "Paychex vs PayFit",
        "url": "https://www.anchorterminal.com/compare/paychex-vs-payfit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/payfit-vs-salsa.json",
        "title": "PayFit vs Salsa",
        "url": "https://www.anchorterminal.com/compare/payfit-vs-salsa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/payfit-vs-worklio.json",
        "title": "PayFit vs Worklio",
        "url": "https://www.anchorterminal.com/compare/payfit-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/payfit-vs-zeal.json",
        "title": "PayFit vs Zeal",
        "url": "https://www.anchorterminal.com/compare/payfit-vs-zeal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/check-payroll-vs-gusto.json",
        "title": "Check vs Gusto",
        "url": "https://www.anchorterminal.com/compare/check-payroll-vs-gusto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/employment-hero-vs-gusto.json",
        "title": "Employment Hero Payroll vs Gusto",
        "url": "https://www.anchorterminal.com/compare/employment-hero-vs-gusto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/everee-vs-gusto.json",
        "title": "Everee vs Gusto",
        "url": "https://www.anchorterminal.com/compare/everee-vs-gusto"
      },
      {
        "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-worklio.json",
        "title": "Gusto vs Worklio",
        "url": "https://www.anchorterminal.com/compare/gusto-vs-worklio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gusto-vs-zeal.json",
        "title": "Gusto vs Zeal",
        "url": "https://www.anchorterminal.com/compare/gusto-vs-zeal"
      }
    ],
    "scores": [
      {
        "by": 21,
        "edge": "payfit",
        "gusto": 58,
        "key": "reliability",
        "name": "Reliability",
        "payfit": 79,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 8,
        "edge": "gusto",
        "gusto": 86,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "payfit": 78,
        "weight": 13
      },
      {
        "by": 31,
        "edge": "gusto",
        "gusto": 82,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "payfit": 51,
        "weight": 13
      },
      {
        "by": 9,
        "edge": "gusto",
        "gusto": 60,
        "key": "security",
        "name": "Security \u0026 auth",
        "payfit": 51,
        "weight": 14
      },
      {
        "by": 5,
        "edge": "gusto",
        "gusto": 15,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "payfit": 10,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 48,
        "edge": "gusto",
        "gusto": 76,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "payfit": 28,
        "weight": 7
      },
      {
        "by": 9,
        "edge": "payfit",
        "gusto": 61,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "payfit": 70,
        "weight": 7
      }
    ],
    "summary": "Gusto scores 63.3 (B) on agent readiness against PayFit's 55.5 (C), and leads in 5 of 7 scored categories. PayFit leads on reliability and transparency \u0026 trust. Both do payroll records.",
    "verdicts": {
      "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.",
      "payfit": "A public OpenAPI 3.0 file, llms.txt and scoped keys let a paying customer's agent read payroll outputs and write absences. The API cannot run or approve a payroll, new partner integrations are not being accepted, and no idempotency keys or SDKs were found."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/gusto-vs-payfit",
    "json": "https://www.anchorterminal.com/compare/gusto-vs-payfit.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/gusto-vs-payfit.md",
    "slim": "https://www.anchorterminal.com/compare/gusto-vs-payfit.min.md"
  },
  "markdown": "Gusto scores 63.3 (B) on agent readiness against PayFit's 55.5 (C), and leads in 5 of 7 scored categories. PayFit leads on reliability and transparency \u0026 trust. Both do payroll records.\n\n- Gusto: grade B, 63.3/100, rank #399 of 950. Markdown https://www.anchorterminal.com/tools/gusto.md · JSON https://www.anchorterminal.com/api/v1/tools/gusto.json\n- PayFit: grade C, 55.5/100, rank #656 of 950. Markdown https://www.anchorterminal.com/tools/payfit.md · JSON https://www.anchorterminal.com/api/v1/tools/payfit.json\n- Best payroll APIs and embedded payroll for AI agents: https://www.anchorterminal.com/best/payroll/index.md\n- All 55 payroll comparisons: https://www.anchorterminal.com/compare/payroll/index.md\n\n## Which one, for what\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- Agent ergonomics, 82 against 51\n- Security \u0026 auth, 60 against 51\n- Payments \u0026 pricing, 15 against 10\n- Maintenance \u0026 community, 76 against 28\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### PayFit (C)\n\nGood for: An agent working for an employer that already runs payroll on PayFit in France, the UK or Spain and needs employees, contracts, payslips, absences or the payroll journal.\n\nAhead on:\n- Reliability, 79 against 58\n- Transparency \u0026 trust, 70 against 61\n\nWatch for: No operation runs, previews or approves a payroll. The API reads payroll status, payslips and accounting exports\n\n\n## Score by category\n\n| Category | Weight | Gusto | PayFit | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 58 | 79 | PayFit +21 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 86 | 78 | Gusto +8 |\n| Agent ergonomics | 13% (16.2 this run) | 82 | 51 | Gusto +31 |\n| Security \u0026 auth | 14% (17.5 this run) | 60 | 51 | Gusto +9 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 15 | 10 | Gusto +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 76 | 28 | Gusto +48 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 61 | 70 | PayFit +9 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **63.3 · B** | **55.5 · C** | |\n\n## Facts side by side\n\n| Fact | Gusto | PayFit |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Gusto, Inc. | PayFit SAS |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | OAuth | OAuth or key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | 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 | Proprietary service under PayFit's general terms of service |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-01 | 2026-07-23 |\n| Terms last updated | couldn't be read | 2026-06-15 |\n| Privacy policy last updated | no document linked | 2026-06-15 |\n| Customer content may train models | couldn't be read | not found in the text |\n| Terms restrict automated access | couldn't be read | not found in the text |\n| Terms restrict benchmarking | couldn't be read | yes |\n| Terms or service can change without notice | couldn't be read | yes |\n| Arbitration or class-action waiver | couldn't be read | not found in the text |\n| Popularity | 2 stars, 25k npm/wk | none |\n\n## Verdicts\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**PayFit.** A public OpenAPI 3.0 file, llms.txt and scoped keys let a paying customer's agent read payroll outputs and write absences. The API cannot run or approve a payroll, new partner integrations are not being accepted, and no idempotency keys or SDKs were found.\n\n## Before you call either\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### PayFit\n\n1. Have a company admin create the key at app.payfit.com/integrations/hub/api with only the scopes the task needs. The key is shown once\n2. POST the key to `https://oauth.payfit.com/introspect` to get `company_id`, then call `https://partner-api.payfit.com/companies/{companyId}/...`\n3. Page lists with `nextPageToken` and `maxResults`, which defaults to 10 and stops at 50\n4. Check before repeating a failed POST. There is no idempotency key, and `POST /absences` creates an absence that is already validated\n5. A collaborator or contract created through the API stays incomplete until an HR admin finishes it in the PayFit app, and a new contract takes 2 to 5 minutes to appear\n\n## Questions\n\n### Which is better for AI agents, Gusto or PayFit?\n\nGusto scores 63.3 (B) on agent readiness against PayFit's 55.5 (C), and leads in 5 of 7 scored categories. PayFit leads on reliability and transparency \u0026 trust.\n\n### Do Gusto and PayFit need an API key?\n\nGusto uses an OAuth sign-in. PayFit takes an API key or an OAuth sign-in.\n\n### Can an agent call Gusto and PayFit without installing anything?\n\nNo hosted endpoint is listed for Gusto. No hosted endpoint is listed for PayFit.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/gusto-vs-payfit.json, and with the fewest tokens: https://www.anchorterminal.com/compare/gusto-vs-payfit.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"gusto\", \"b\": \"payfit\"}`. From a terminal: `anchor compare gusto payfit`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/gusto.json and https://www.anchorterminal.com/api/v1/tools/payfit.json\n\n## Other comparisons with Gusto or PayFit\n\n- [Argyle vs Gusto](https://www.anchorterminal.com/compare/argyle-vs-gusto.md)\n- [Argyle vs PayFit](https://www.anchorterminal.com/compare/argyle-vs-payfit.md)\n- [Check vs PayFit](https://www.anchorterminal.com/compare/check-payroll-vs-payfit.md)\n- [Employment Hero Payroll vs PayFit](https://www.anchorterminal.com/compare/employment-hero-vs-payfit.md)\n- [Everee vs PayFit](https://www.anchorterminal.com/compare/everee-vs-payfit.md)\n- [Finch vs Gusto](https://www.anchorterminal.com/compare/finch-vs-gusto.md)\n- [Finch vs PayFit](https://www.anchorterminal.com/compare/finch-vs-payfit.md)\n- [Gusto vs Paychex](https://www.anchorterminal.com/compare/gusto-vs-paychex.md)\n- [Paychex vs PayFit](https://www.anchorterminal.com/compare/paychex-vs-payfit.md)\n- [PayFit vs Salsa](https://www.anchorterminal.com/compare/payfit-vs-salsa.md)\n- [PayFit vs Worklio](https://www.anchorterminal.com/compare/payfit-vs-worklio.md)\n- [PayFit vs Zeal](https://www.anchorterminal.com/compare/payfit-vs-zeal.md)\n- [Check vs Gusto](https://www.anchorterminal.com/compare/check-payroll-vs-gusto.md)\n- [Employment Hero Payroll vs Gusto](https://www.anchorterminal.com/compare/employment-hero-vs-gusto.md)\n- [Everee vs Gusto](https://www.anchorterminal.com/compare/everee-vs-gusto.md)\n- [Gusto vs Salsa](https://www.anchorterminal.com/compare/gusto-vs-salsa.md)\n- [Gusto vs Worklio](https://www.anchorterminal.com/compare/gusto-vs-worklio.md)\n- [Gusto vs Zeal](https://www.anchorterminal.com/compare/gusto-vs-zeal.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "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": "Gusto vs PayFit",
        "url": ""
      }
    ],
    "description": "Gusto scores 63.3 (B) to PayFit's 55.5 (C) for payroll records. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Gusto B 63.3",
      "PayFit C 55.5",
      "scores"
    ],
    "h1": "Gusto vs PayFit",
    "image": "https://www.anchorterminal.com/assets/og/compare-gusto-vs-payfit.png",
    "path": "/compare/gusto-vs-payfit",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Gusto vs PayFit for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/gusto-vs-payfit"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 680
  },
  "version": 1
}
