{
  "data": {
    "a": {
      "slug": "azure-translator",
      "name": "Azure Translator",
      "vendor": "Microsoft Azure",
      "vendorUrl": "https://azure.microsoft.com/en-us/products/ai-services/ai-translator",
      "kind": "http-api",
      "category": "translation",
      "summary": "Microsoft's translation API, now part of Foundry Tools.",
      "url": "https://www.anchorterminal.com/tools/azure-translator",
      "markdownUrl": "https://www.anchorterminal.com/tools/azure-translator.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/azure-translator.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/azure-translator.json",
      "repo": "https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/translation",
      "license": "MIT (SDKs)",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.cognitive.microsofttranslator.com",
      "packages": [
        {
          "registry": "pypi",
          "name": "azure-ai-translation-text"
        },
        {
          "registry": "npm",
          "name": "@azure-rest/ai-translation-text"
        }
      ],
      "auth": "mixed",
      "authNotes": "`Ocp-Apim-Subscription-Key` with the resource key plus `Ocp-Apim-Subscription-Region`, a time-limited bearer token, or Microsoft Entra ID (managed identity or service principal). LLM translation also needs a Microsoft Foundry resource.",
      "pricing": "freemium",
      "pricingNotes": "Free F0 tier with 2 million characters a month of standard translation and custom training combined (https://azure.microsoft.com/en-us/pricing/details/translator/). Pay as you go (S1) in East US is $10 per million characters for text, $15 for document translation, $40 for custom-model translation and $10 for custom training, plus $10 a month per hosted custom model per region. Commitment tiers are $2,055 a month for 250 million characters ($8.22 per million over), $6,000 for 1 billion ($6) and $22,000 for 4 billion ($5.50) (https://prices.azure.com/api/retail/prices?$filter=productName%20eq%20%27Translator%20Text%27). LLM translation bills input and output tokens at Azure OpenAI rates instead of characters (https://learn.microsoft.com/en-us/azure/ai-services/translator/text-translation/overview).",
      "priceSummary": "$10 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 156429,
        "pypiWeekly": 39569,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://learn.microsoft.com/en-us/azure/ai-services/translator/",
      "openapi": "https://github.com/Azure/azure-rest-api-specs/blob/main/specification/translation/data-plane/TextTranslation/stable/2026-06-06/openapi.json",
      "capabilities": [
        "translate.text",
        "translate.documents",
        "translate.glossary",
        "translate.detect",
        "translate.formality"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "closed-source",
        "openapi",
        "python",
        "typescript",
        "enterprise",
        "batch",
        "async-jobs",
        "card-required"
      ],
      "lastRelease": "2026-06-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 72,
        "grade": "BB",
        "agentReady": true,
        "rank": 97,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 82,
          "maintenance": 70,
          "payments": 20,
          "reliability": 83,
          "schema": 83,
          "security": 75,
          "transparency": 78
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "$10 per million characters pay as you go, 2 million free a month on F0, commitment overage down to $5.50. The 2026-06-06 schema breaks v3.0 clients and drops BreakSentence and dictionary lookups from the spec.",
        "bestFor": "Azure shops that want cheap NMT at volume, Entra ID auth and a choice of an LLM per request for tone and gender.",
        "strengths": [
          "$10 per million characters pay as you go, 2 million free a month on F0, commitment overage down to $5.50",
          "Text isn't stored and documents are hard-deleted after processing",
          "OpenAPI documents for 3.0 and 2026-06-06 in Microsoft's public spec repository",
          "Up to 1,000 texts and 50,000 characters in one NMT request, several targets per call",
          "Microsoft Entra ID with managed identities as well as keys"
        ],
        "weaknesses": [
          "The 2026-06-06 schema breaks v3.0 clients and drops BreakSentence and dictionary lookups from the spec",
          "LLM translation needs a Foundry deployment and bills tokens on the Azure OpenAI meter",
          "Tone and gender controls only on the LLM option, which takes 50 texts of 5,000 characters a call",
          "No backoff or Retry-After guidance for 429",
          "The key can travel in a `Subscription-Key` query parameter"
        ],
        "agentNotes": [
          "Send `Ocp-Apim-Subscription-Region` with the key for a regional resource",
          "Pin `api-version=3.0` until your client handles the 2026-06-06 `inputs` and `value` shape",
          "Batch up to 1,000 strings a call rather than one call per string",
          "Spread load across the hour, since the character caps are hourly and bursts get 429",
          "Treat 403001 as the free quota running out, not a permissions error"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 72
          }
        ],
        "editorialScores": {
          "ergonomics": 82,
          "maintenance": 70,
          "payments": 20,
          "reliability": 83,
          "schema": 83,
          "security": 75,
          "transparency": 65
        },
        "provenanceScore": 90
      },
      "connect": {
        "install": "pip install azure-ai-translation-text   # or: npm i @azure-rest/ai-translation-text",
        "http": "curl -X POST \"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0\u0026to=fr\" \\\n  -H \"Ocp-Apim-Subscription-Key: $AZURE_TRANSLATOR_KEY\" -H \"Ocp-Apim-Subscription-Region: $AZURE_TRANSLATOR_REGION\" \\\n  -H \"Content-Type: application/json\" -d '[{\"Text\":\"Your table is booked for seven.\"}]'"
      },
      "letme": {
        "capability": "https://letme.dev/translate.text",
        "tool": "https://letme.dev/azure-translator"
      },
      "sameCompany": [
        "azure-foundry-fine-tuning",
        "azure-ai-content-safety",
        "azure-speech-to-text",
        "azure-text-to-speech",
        "microsoft-agent-framework",
        "microsoft-execution-containers",
        "microsoft-entra-agent-id",
        "azure-key-vault",
        "azure-devops-mcp",
        "microsoft-learn-mcp",
        "playwright-mcp",
        "azure-mcp",
        "azure-maps",
        "microsoft-graph-calendar",
        "microsoft-teams",
        "dynamics-365-sales",
        "power-automate",
        "microsoft-advertising-api",
        "microsoft-excel-graph",
        "outlook-mail-graph"
      ],
      "area": "everyday",
      "unitPrices": [
        {
          "item": "S1 text translation",
          "unit": "1m-chars",
          "usd": 10,
          "note": "East US, pay as you go"
        },
        {
          "item": "S1 document translation",
          "unit": "1m-chars",
          "usd": 15
        },
        {
          "item": "S1 custom-model translation",
          "unit": "1m-chars",
          "usd": 40
        },
        {
          "item": "Custom model training",
          "unit": "1m-chars",
          "usd": 10,
          "note": "Source plus target characters"
        },
        {
          "item": "Custom model hosting",
          "unit": "month",
          "usd": 10,
          "note": "Per model, per region"
        },
        {
          "item": "Commitment 250M",
          "unit": "month",
          "usd": 2055,
          "note": "250 million characters, $8.22 per million over"
        },
        {
          "item": "Commitment 1B",
          "unit": "month",
          "usd": 6000,
          "note": "1 billion characters, $6 per million over"
        },
        {
          "item": "Commitment 4B",
          "unit": "month",
          "usd": 22000,
          "note": "4 billion characters, $5.50 per million over"
        }
      ],
      "provenance": {
        "legalEntity": "Microsoft Corporation",
        "domain": "microsoft.com",
        "domainRegistered": "1991-05-02",
        "domainNote": "The endpoint is on api.cognitive.microsofttranslator.com, a Microsoft domain. microsoft.com's security.txt passed its Expires date on 2026-09-23.",
        "endpointOnVendorDomain": true,
        "terms": "https://www.microsoft.com/licensing/terms/",
        "privacy": "https://privacy.microsoft.com/en-us/privacystatement",
        "statusPage": "https://azure.status.microsoft/en-us/status",
        "changelog": "https://learn.microsoft.com/en-us/azure/ai-services/translator/whats-new",
        "securityTxt": "expired",
        "checked": "2026-09-30",
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/azure-translator.json",
      "live": {
        "slug": "azure-translator",
        "probe": {
          "target": "https://api.cognitive.microsofttranslator.com",
          "method": "get",
          "lastAt": "2026-10-08T21:53:16.518229431Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 76,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.9,
          "p50ms24h": 56,
          "p95ms24h": 84,
          "samples24h": 270,
          "samples30d": 1962,
          "days": [
            {
              "date": "2026-10-01",
              "probes": 109,
              "ok": 109
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 270
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 271
            },
            {
              "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": 246,
              "ok": 246
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "Azure/azure-sdk-for-python",
            "version": "azure-monitor-opentelemetry_1.8.11",
            "released": "2026-10-07",
            "seenAt": "2026-10-08T16:01:31.245136443Z"
          },
          {
            "registry": "npm",
            "name": "@azure-rest/ai-translation-text",
            "version": "2.0.0",
            "seenAt": "2026-10-08T16:01:28.634010783Z"
          },
          {
            "registry": "pypi",
            "name": "azure-ai-translation-text",
            "version": "2.0.0",
            "released": "2026-05-29",
            "seenAt": "2026-10-08T16:01:24.82790421Z"
          }
        ],
        "githubStars": 5614,
        "npmWeekly": 138082,
        "pypiWeekly": 41633,
        "securityTxt": {
          "url": "https://microsoft.com/.well-known/security.txt",
          "state": "expired",
          "expires": "2026-09-23T16:00:00.000Z",
          "checkedAt": "2026-10-08T15:39:08.216544687Z"
        },
        "domain": {
          "domain": "microsoft.com",
          "registered": "1991-05-02",
          "source": "https://rdap.verisign.com/com/v1/domain/microsoft.com",
          "checkedAt": "2026-10-04T13:04:13.488857536Z"
        },
        "pages": [
          {
            "url": "https://learn.microsoft.com/en-us/azure/ai-services/translator/whats-new",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-08T18:21:32.102820032Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "96691db5061f"
          },
          {
            "url": "https://azure.microsoft.com/en-us/pricing/details/translator/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:15:33.901025539Z",
            "changedAt": "2026-10-07T18:02:49.663631497Z",
            "fingerprint": "06634fbe2ae5"
          },
          {
            "url": "https://prices.azure.com/api/retail/prices?$filter=productName%20eq%20%27Translator%20Text%27",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:23:20.793883531Z",
            "changedAt": "0001-01-01T00:00:00Z"
          }
        ],
        "updatedAt": "2026-10-08T21:53:16.518229431Z"
      }
    },
    "answer": "Azure Translator scores 72 (BB) on agent readiness against Crowdin's 69.6 (B), and leads in 4 of 7 scored categories. Crowdin leads on payments \u0026 pricing and maintenance \u0026 community.",
    "b": {
      "slug": "crowdin",
      "name": "Crowdin",
      "vendor": "Crowdin OÜ",
      "vendorUrl": "https://crowdin.com",
      "kind": "http-api",
      "category": "translation",
      "summary": "Crowdin is a hosted localisation platform that stores source files and strings, translation memories and glossaries, and runs machine and AI translation over them. Agents reach it through a REST API, a CLI and a hosted MCP server.",
      "url": "https://www.anchorterminal.com/tools/crowdin",
      "markdownUrl": "https://www.anchorterminal.com/tools/crowdin.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/crowdin.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/crowdin.json",
      "repo": "https://github.com/crowdin/crowdin-cli",
      "license": "Proprietary service under Crowdin's terms. The CLI and the official API clients are MIT",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.crowdin.com/api/v2",
      "packages": [
        {
          "registry": "npm",
          "name": "@crowdin/crowdin-api-client"
        },
        {
          "registry": "npm",
          "name": "@crowdin/cli"
        },
        {
          "registry": "pypi",
          "name": "crowdin-api-client"
        }
      ],
      "auth": "mixed",
      "authNotes": "A person signs up in a browser, then creates a personal access token in Account Settings or registers an OAuth app. No review or sales approval is described. Every call sends `Authorization: Bearer \u003ctoken\u003e`. Tokens take an expiry date (the default is never), scopes with read-only or read-and-write access, and a granular option that limits them to chosen projects. OAuth is the authorisation code grant at accounts.crowdin.com, with a client secret or PKCE, and access tokens last 7,200 seconds with a refresh token. The MCP server accepts the same tokens, or an OAuth sign-in where the client registers itself at `https://mcp.crowdin.com/register`.",
      "pricing": "freemium",
      "pricingNotes": "A Free plan at $0 and a 14-day trial of the Team plan let an agent's owner start without a contract. Paid plans in the pricing page's structured data are Pro $50, Team $150 and Team+ $450 a month, with annual billing giving two months free. Plans are sized by hosted words (source words multiplied by target languages). Machine translation, AI and professional translation are paid from prepaid Crowdin Credits, or run on the customer's own engine keys. Plan limits, the comparison table and the CDN add-on's unit prices are drawn by script and were not read. Whether the Free plan needs a card is not stated on the page (https://crowdin.com/pricing, checked 2026-10-08).",
      "priceSummary": "$50 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer documentation, the OpenAPI document or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 320,
        "npmWeekly": 264028,
        "pypiWeekly": 13847,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://support.crowdin.com/developer/api/",
      "llmsTxt": "https://support.crowdin.com/llms.txt",
      "openapi": "https://support.crowdin.com/src/assets/api/crowdin/file-based.yml",
      "capabilities": [
        "translate.text",
        "translate.documents",
        "translate.glossary",
        "translate.detect"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "mcp",
        "oauth",
        "openapi",
        "llms-txt",
        "cli",
        "typescript",
        "python",
        "eu",
        "status-page",
        "closed-source",
        "localisation"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.6,
        "grade": "B",
        "agentReady": false,
        "rank": 153,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 69,
          "maintenance": 82,
          "payments": 30,
          "reliability": 78,
          "schema": 80,
          "security": 68,
          "transparency": 79
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The REST API has a public OpenAPI document with 374 operations, and tokens can be limited by scope, access level and project. Translation runs inside Crowdin projects and connected engines, so it is not a stateless per-character translation API. No Retry-After guidance, idempotency keys or SLA were found in the reviewed documentation.",
        "bestFor": "Teams that keep product strings and files in Crowdin and want an agent to upload sources, check progress, apply pre-translation, manage glossaries and pull builds.",
        "strengths": [
          "Public OpenAPI 3.0 document with 374 operations on 218 paths, plus `llms.txt` with one text file per route",
          "Personal access tokens take an expiry date, per-scope read-only or read-and-write access, and a granular option limiting them to chosen projects",
          "The MCP V2 endpoint filters tools by header, with `crowdin-read-only`, `crowdin-tool-sets`, `crowdin-project-type` and `crowdin-tool-filter`",
          "status.crowdin.com lists no incident between 10 July and 8 October 2026, with separate components for the API and the EU data centre",
          "Seven official API clients under MIT, with `@crowdin/crowdin-api-client` 1.59.0 on 29 September and `@crowdin/cli` 5.3.0 on 24 September 2026"
        ],
        "weaknesses": [
          "The terms forbid accessing the service to monitor availability, performance or functionality, or for benchmarking, without Crowdin's prior written consent",
          "A 429 is returned above 20 simultaneous requests an account, with no Retry-After header or backoff guidance in the reference",
          "No idempotency keys in the OpenAPI document, and no SLA found in the terms or the help centre",
          "Plan limits and add-on unit prices on the pricing page are drawn by script. Only four plan prices were readable, from the page's structured data",
          "MCP V1 and 12 API operations are marked deprecated with no removal date, and no deprecation policy was found"
        ],
        "agentNotes": [
          "Send `Authorization: Bearer \u003ctoken\u003e` to `https://api.crowdin.com/api/v2`. Crowdin Enterprise uses `https://\u003corganization_domain\u003e.api.crowdin.com/api/v2`",
          "Use the MCP V2 endpoint `https://mcp.crowdin.com/v2/mcp` and set `crowdin-tool-sets`, because the server loads all 33 tool sets by default",
          "Set `crowdin-read-only: true` on the MCP connection for exploration. It exposes only list and get tools",
          "Keep to 20 concurrent requests an account across all tokens, and add your own backoff on 429",
          "Upload a file to `/storages` first, then pass the `storageId` to the add-file call. Builds, exports and reports are asynchronous and need a status poll",
          "`/mts/{mtId}/translations` takes at most 100 strings a call and needs the `mt` scope and a configured engine"
        ],
        "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": 69.6
          }
        ],
        "editorialScores": {
          "ergonomics": 69,
          "maintenance": 82,
          "payments": 30,
          "reliability": 78,
          "schema": 80,
          "security": 68,
          "transparency": 65
        },
        "provenanceScore": 93
      },
      "connect": {
        "install": "npm i @crowdin/crowdin-api-client   # or: pip install crowdin-api-client",
        "http": "curl -H \"Authorization: Bearer ACCESS_TOKEN\" https://api.crowdin.com/api/v2/projects",
        "claudeCode": "claude mcp add --transport http --header \"Authorization: Bearer {YOUR_CROWDIN_TOKEN}\" crowdin https://mcp.crowdin.com/v2/mcp",
        "config": {
          "mcpServers": {
            "crowdin": {
              "headers": {
                "Authorization": "Bearer {YOUR_CROWDIN_TOKEN}"
              },
              "url": "https://mcp.crowdin.com/v2/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/translate.text",
        "tool": "https://letme.dev/crowdin"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Pro plan",
          "unit": "month",
          "usd": 50,
          "note": "from the pricing page's structured data, plan limits not read"
        },
        {
          "item": "Team plan",
          "unit": "month",
          "usd": 150,
          "note": "from the pricing page's structured data, plan limits not read"
        },
        {
          "item": "Team+ plan",
          "unit": "month",
          "usd": 450,
          "note": "from the pricing page's structured data, plan limits not read"
        }
      ],
      "provenance": {
        "legalEntity": "Crowdin OÜ",
        "domain": "crowdin.com",
        "domainRegistered": "2009-02-07",
        "endpointOnVendorDomain": true,
        "terms": "https://support.crowdin.com/terms/",
        "privacy": "https://support.crowdin.com/privacy-policy/",
        "statusPage": "https://status.crowdin.com",
        "changelog": "https://crowdin.com/blog/whats-new-at-crowdin-september-2026",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The terms (last revised 24 September 2026) name Crowdin OÜ, Liivalaia 36, Tallinn, Estonia, register code 14479905, as the contracting party, under Estonian law.",
          "The terms govern the platform and its APIs (the definition of Software Services includes APIs) and carry the data processing contract in section 9.",
          "The privacy policy (last revised 24 September 2026) covers the site and the service. crowdin.com/privacy redirects to it.",
          "crowdin.com/.well-known/security.txt gives a contact page, a policy link and an expiry of 31 January 2030.",
          "No dated API changelog was found. The changelog link is the latest monthly product update on the blog, published 1 October 2026.",
          "RDAP for crowdin.com gives a registration date of 2009-02-07.",
          "The API answers at api.crowdin.com and the MCP server at mcp.crowdin.com."
        ],
        "score": 93
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/crowdin.json",
      "live": {
        "slug": "crowdin",
        "probe": {
          "target": "https://api.crowdin.com/api/v2",
          "method": "get",
          "lastAt": "2026-10-08T21:53:19.93910634Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 271,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 278,
          "p95ms24h": 301,
          "samples24h": 28,
          "samples30d": 28,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 28,
              "ok": 28
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.crowdin.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:57:49.46218786Z"
        },
        "updatedAt": "2026-10-08T21:57:49.46218786Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Microsoft Azure",
        "b": "Crowdin OÜ",
        "name": "Vendor"
      },
      {
        "a": "https://api.cognitive.microsofttranslator.com",
        "b": "https://api.crowdin.com/api/v2",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "$10 per 1M characters",
        "b": "not published",
        "name": "Price for translate text"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT (SDKs)",
        "b": "Proprietary service under Crowdin's terms. The CLI and the official API clients are MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-06-06",
        "b": "2026-09-30",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "2026-09-24",
        "name": "Terms last updated"
      },
      {
        "a": "2026-09-01",
        "b": "2026-09-24",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "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": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "156k npm/wk, 40k PyPI/wk",
        "b": "320 stars, 264k npm/wk, 14k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Azure Translator scores 72 (BB) on agent readiness against Crowdin's 69.6 (B), and leads in 4 of 7 scored categories. Crowdin leads on payments \u0026 pricing and maintenance \u0026 community.",
        "question": "Which is better for AI agents, Azure Translator or Crowdin?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Azure Translator and Crowdin need an API key?"
      },
      {
        "answer": "Yes. Azure Translator has a hosted endpoint at https://api.cognitive.microsofttranslator.com and Crowdin at https://api.crowdin.com/api/v2.",
        "question": "Can an agent call Azure Translator and Crowdin without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 83 against 78",
          "Agent ergonomics, 82 against 69",
          "Security \u0026 auth, 75 against 68"
        ],
        "also": [
          "Agent-ready, a grade of BB or better"
        ],
        "goodFor": "Azure shops that want cheap NMT at volume, Entra ID auth and a choice of an LLM per request for tone and gender.",
        "slug": "azure-translator",
        "watchFor": "The 2026-06-06 schema breaks v3.0 clients and drops BreakSentence and dictionary lookups from the spec"
      },
      {
        "aheadOn": [
          "Payments \u0026 pricing, 30 against 20",
          "Maintenance \u0026 community, 82 against 70"
        ],
        "also": null,
        "goodFor": "Teams that keep product strings and files in Crowdin and want an agent to upload sources, check progress, apply pre-translation, manage glossaries and pull builds.",
        "slug": "crowdin",
        "watchFor": "The terms forbid accessing the service to monitor availability, performance or functionality, or for benchmarking, without Crowdin's prior written consent"
      }
    ],
    "job": {
      "capability": "translate.text",
      "name": "Translate text"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-translate-vs-azure-translator.json",
        "title": "Amazon Translate vs Azure Translator",
        "url": "https://www.anchorterminal.com/compare/amazon-translate-vs-azure-translator"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-translate-vs-crowdin.json",
        "title": "Amazon Translate vs Crowdin",
        "url": "https://www.anchorterminal.com/compare/amazon-translate-vs-crowdin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-translator-vs-deepl-api.json",
        "title": "Azure Translator vs DeepL API",
        "url": "https://www.anchorterminal.com/compare/azure-translator-vs-deepl-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-translator-vs-google-cloud-translation.json",
        "title": "Azure Translator vs Google Cloud Translation",
        "url": "https://www.anchorterminal.com/compare/azure-translator-vs-google-cloud-translation"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-translator-vs-lara-translate.json",
        "title": "Azure Translator vs Lara Translate API",
        "url": "https://www.anchorterminal.com/compare/azure-translator-vs-lara-translate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-translator-vs-libretranslate.json",
        "title": "Azure Translator vs LibreTranslate",
        "url": "https://www.anchorterminal.com/compare/azure-translator-vs-libretranslate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-translator-vs-lingo-dev.json",
        "title": "Azure Translator vs Lingo.dev",
        "url": "https://www.anchorterminal.com/compare/azure-translator-vs-lingo-dev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-translator-vs-lingvanex.json",
        "title": "Azure Translator vs Lingvanex Translation API",
        "url": "https://www.anchorterminal.com/compare/azure-translator-vs-lingvanex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-translator-vs-lokalise.json",
        "title": "Azure Translator vs Lokalise",
        "url": "https://www.anchorterminal.com/compare/azure-translator-vs-lokalise"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-translator-vs-phrase.json",
        "title": "Azure Translator vs Phrase",
        "url": "https://www.anchorterminal.com/compare/azure-translator-vs-phrase"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-translator-vs-systran.json",
        "title": "Azure Translator vs SYSTRAN Translate API",
        "url": "https://www.anchorterminal.com/compare/azure-translator-vs-systran"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crowdin-vs-deepl-api.json",
        "title": "Crowdin vs DeepL API",
        "url": "https://www.anchorterminal.com/compare/crowdin-vs-deepl-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crowdin-vs-google-cloud-translation.json",
        "title": "Crowdin vs Google Cloud Translation",
        "url": "https://www.anchorterminal.com/compare/crowdin-vs-google-cloud-translation"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crowdin-vs-lara-translate.json",
        "title": "Crowdin vs Lara Translate API",
        "url": "https://www.anchorterminal.com/compare/crowdin-vs-lara-translate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crowdin-vs-libretranslate.json",
        "title": "Crowdin vs LibreTranslate",
        "url": "https://www.anchorterminal.com/compare/crowdin-vs-libretranslate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crowdin-vs-lingo-dev.json",
        "title": "Crowdin vs Lingo.dev",
        "url": "https://www.anchorterminal.com/compare/crowdin-vs-lingo-dev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crowdin-vs-lingvanex.json",
        "title": "Crowdin vs Lingvanex Translation API",
        "url": "https://www.anchorterminal.com/compare/crowdin-vs-lingvanex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crowdin-vs-lokalise.json",
        "title": "Crowdin vs Lokalise",
        "url": "https://www.anchorterminal.com/compare/crowdin-vs-lokalise"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crowdin-vs-phrase.json",
        "title": "Crowdin vs Phrase",
        "url": "https://www.anchorterminal.com/compare/crowdin-vs-phrase"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crowdin-vs-systran.json",
        "title": "Crowdin vs SYSTRAN Translate API",
        "url": "https://www.anchorterminal.com/compare/crowdin-vs-systran"
      }
    ],
    "scores": [
      {
        "azure-translator": 83,
        "by": 5,
        "crowdin": 78,
        "edge": "azure-translator",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "azure-translator": 83,
        "by": 3,
        "crowdin": 80,
        "edge": "azure-translator",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "azure-translator": 82,
        "by": 13,
        "crowdin": 69,
        "edge": "azure-translator",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "azure-translator": 75,
        "by": 7,
        "crowdin": 68,
        "edge": "azure-translator",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "azure-translator": 20,
        "by": 10,
        "crowdin": 30,
        "edge": "crowdin",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "azure-translator": 70,
        "by": 12,
        "crowdin": 82,
        "edge": "crowdin",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "azure-translator": 78,
        "by": 1,
        "crowdin": 79,
        "edge": "crowdin",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Azure Translator scores 72 (BB) on agent readiness against Crowdin's 69.6 (B), and leads in 4 of 7 scored categories. Crowdin leads on payments \u0026 pricing and maintenance \u0026 community. Both do translate text.",
    "verdicts": {
      "azure-translator": "$10 per million characters pay as you go, 2 million free a month on F0, commitment overage down to $5.50. The 2026-06-06 schema breaks v3.0 clients and drops BreakSentence and dictionary lookups from the spec.",
      "crowdin": "The REST API has a public OpenAPI document with 374 operations, and tokens can be limited by scope, access level and project. Translation runs inside Crowdin projects and connected engines, so it is not a stateless per-character translation API. No Retry-After guidance, idempotency keys or SLA were found in the reviewed documentation."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/azure-translator-vs-crowdin",
    "json": "https://www.anchorterminal.com/compare/azure-translator-vs-crowdin.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/azure-translator-vs-crowdin.md",
    "slim": "https://www.anchorterminal.com/compare/azure-translator-vs-crowdin.min.md"
  },
  "markdown": "Azure Translator scores 72 (BB) on agent readiness against Crowdin's 69.6 (B), and leads in 4 of 7 scored categories. Crowdin leads on payments \u0026 pricing and maintenance \u0026 community. Both do translate text.\n\n- Azure Translator: grade BB, 72/100, rank #97 of 722. Markdown https://www.anchorterminal.com/tools/azure-translator.md · JSON https://www.anchorterminal.com/api/v1/tools/azure-translator.json\n- Crowdin: grade B, 69.6/100, rank #153 of 722. Markdown https://www.anchorterminal.com/tools/crowdin.md · JSON https://www.anchorterminal.com/api/v1/tools/crowdin.json\n\n## Which one, for what\n\n### Azure Translator (BB)\n\nGood for: Azure shops that want cheap NMT at volume, Entra ID auth and a choice of an LLM per request for tone and gender.\n\nAhead on:\n- Reliability, 83 against 78\n- Agent ergonomics, 82 against 69\n- Security \u0026 auth, 75 against 68\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n\nWatch for: The 2026-06-06 schema breaks v3.0 clients and drops BreakSentence and dictionary lookups from the spec\n\n### Crowdin (B)\n\nGood for: Teams that keep product strings and files in Crowdin and want an agent to upload sources, check progress, apply pre-translation, manage glossaries and pull builds.\n\nAhead on:\n- Payments \u0026 pricing, 30 against 20\n- Maintenance \u0026 community, 82 against 70\n\nWatch for: The terms forbid accessing the service to monitor availability, performance or functionality, or for benchmarking, without Crowdin's prior written consent\n\n\n## Score by category\n\n| Category | Weight | Azure Translator | Crowdin | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 83 | 78 | Azure Translator +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 83 | 80 | Azure Translator +3 |\n| Agent ergonomics | 13% (16.2 this run) | 82 | 69 | Azure Translator +13 |\n| Security \u0026 auth | 14% (17.5 this run) | 75 | 68 | Azure Translator +7 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 30 | Crowdin +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 70 | 82 | Crowdin +12 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 78 | 79 | Crowdin +1 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **72 · BB** | **69.6 · B** | |\n\n## Facts side by side\n\n| Fact | Azure Translator | Crowdin |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Microsoft Azure | Crowdin OÜ |\n| Hosted endpoint | `https://api.cognitive.microsofttranslator.com` | `https://api.crowdin.com/api/v2` |\n| Transports | HTTP | HTTP, Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Freemium |\n| Price for translate text | $10 per 1M characters | not published |\n| x402 | no | no |\n| Licence | MIT (SDKs) | Proprietary service under Crowdin's terms. The CLI and the official API clients are MIT |\n| Read-only variant documented | no | yes |\n| llms.txt | no | yes |\n| Last release | 2026-06-06 | 2026-09-30 |\n| Terms last updated | couldn't be read | 2026-09-24 |\n| Privacy policy last updated | 2026-09-01 | 2026-09-24 |\n| Customer content may train models | yes | not found in the text |\n| Terms restrict automated access | couldn't be read | yes |\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 | yes |\n| Popularity | 156k npm/wk, 40k PyPI/wk | 320 stars, 264k npm/wk, 14k PyPI/wk |\n| Agent reviews | 3.5/5 (2) | none |\n\n## Verdicts\n\n**Azure Translator.** $10 per million characters pay as you go, 2 million free a month on F0, commitment overage down to $5.50. The 2026-06-06 schema breaks v3.0 clients and drops BreakSentence and dictionary lookups from the spec.\n\n**Crowdin.** The REST API has a public OpenAPI document with 374 operations, and tokens can be limited by scope, access level and project. Translation runs inside Crowdin projects and connected engines, so it is not a stateless per-character translation API. No Retry-After guidance, idempotency keys or SLA were found in the reviewed documentation.\n\n## Before you call either\n\n### Azure Translator\n\n1. Send `Ocp-Apim-Subscription-Region` with the key for a regional resource\n2. Pin `api-version=3.0` until your client handles the 2026-06-06 `inputs` and `value` shape\n3. Batch up to 1,000 strings a call rather than one call per string\n4. Spread load across the hour, since the character caps are hourly and bursts get 429\n5. Treat 403001 as the free quota running out, not a permissions error\n\n### Crowdin\n\n1. Send `Authorization: Bearer \u003ctoken\u003e` to `https://api.crowdin.com/api/v2`. Crowdin Enterprise uses `https://\u003corganization_domain\u003e.api.crowdin.com/api/v2`\n2. Use the MCP V2 endpoint `https://mcp.crowdin.com/v2/mcp` and set `crowdin-tool-sets`, because the server loads all 33 tool sets by default\n3. Set `crowdin-read-only: true` on the MCP connection for exploration. It exposes only list and get tools\n4. Keep to 20 concurrent requests an account across all tokens, and add your own backoff on 429\n5. Upload a file to `/storages` first, then pass the `storageId` to the add-file call. Builds, exports and reports are asynchronous and need a status poll\n6. `/mts/{mtId}/translations` takes at most 100 strings a call and needs the `mt` scope and a configured engine\n\n## Questions\n\n### Which is better for AI agents, Azure Translator or Crowdin?\n\nAzure Translator scores 72 (BB) on agent readiness against Crowdin's 69.6 (B), and leads in 4 of 7 scored categories. Crowdin leads on payments \u0026 pricing and maintenance \u0026 community.\n\n### Do Azure Translator and Crowdin need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Azure Translator and Crowdin without installing anything?\n\nYes. Azure Translator has a hosted endpoint at https://api.cognitive.microsofttranslator.com and Crowdin at https://api.crowdin.com/api/v2.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/azure-translator-vs-crowdin.json, and with the fewest tokens: https://www.anchorterminal.com/compare/azure-translator-vs-crowdin.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"azure-translator\", \"b\": \"crowdin\"}`. From a terminal: `anchor compare azure-translator crowdin`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/azure-translator.json and https://www.anchorterminal.com/api/v1/tools/crowdin.json\n\n## Other comparisons with Azure Translator or Crowdin\n\n- [Amazon Translate vs Azure Translator](https://www.anchorterminal.com/compare/amazon-translate-vs-azure-translator.md)\n- [Amazon Translate vs Crowdin](https://www.anchorterminal.com/compare/amazon-translate-vs-crowdin.md)\n- [Azure Translator vs DeepL API](https://www.anchorterminal.com/compare/azure-translator-vs-deepl-api.md)\n- [Azure Translator vs Google Cloud Translation](https://www.anchorterminal.com/compare/azure-translator-vs-google-cloud-translation.md)\n- [Azure Translator vs Lara Translate API](https://www.anchorterminal.com/compare/azure-translator-vs-lara-translate.md)\n- [Azure Translator vs LibreTranslate](https://www.anchorterminal.com/compare/azure-translator-vs-libretranslate.md)\n- [Azure Translator vs Lingo.dev](https://www.anchorterminal.com/compare/azure-translator-vs-lingo-dev.md)\n- [Azure Translator vs Lingvanex Translation API](https://www.anchorterminal.com/compare/azure-translator-vs-lingvanex.md)\n- [Azure Translator vs Lokalise](https://www.anchorterminal.com/compare/azure-translator-vs-lokalise.md)\n- [Azure Translator vs Phrase](https://www.anchorterminal.com/compare/azure-translator-vs-phrase.md)\n- [Azure Translator vs SYSTRAN Translate API](https://www.anchorterminal.com/compare/azure-translator-vs-systran.md)\n- [Crowdin vs DeepL API](https://www.anchorterminal.com/compare/crowdin-vs-deepl-api.md)\n- [Crowdin vs Google Cloud Translation](https://www.anchorterminal.com/compare/crowdin-vs-google-cloud-translation.md)\n- [Crowdin vs Lara Translate API](https://www.anchorterminal.com/compare/crowdin-vs-lara-translate.md)\n- [Crowdin vs LibreTranslate](https://www.anchorterminal.com/compare/crowdin-vs-libretranslate.md)\n- [Crowdin vs Lingo.dev](https://www.anchorterminal.com/compare/crowdin-vs-lingo-dev.md)\n- [Crowdin vs Lingvanex Translation API](https://www.anchorterminal.com/compare/crowdin-vs-lingvanex.md)\n- [Crowdin vs Lokalise](https://www.anchorterminal.com/compare/crowdin-vs-lokalise.md)\n- [Crowdin vs Phrase](https://www.anchorterminal.com/compare/crowdin-vs-phrase.md)\n- [Crowdin vs SYSTRAN Translate API](https://www.anchorterminal.com/compare/crowdin-vs-systran.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": "Azure Translator vs Crowdin",
        "url": ""
      }
    ],
    "description": "Azure Translator scores 72 (BB) on agent readiness against Crowdin's 69.6 (B), and leads in 4 of 7 scored categories. Crowdin leads on payments \u0026 pricing and maintenance \u0026 community. Both do translate text. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Azure Translator BB 72",
      "Crowdin B 69.6",
      "scores"
    ],
    "h1": "Azure Translator vs Crowdin",
    "image": "https://www.anchorterminal.com/assets/og/compare-azure-translator-vs-crowdin.png",
    "path": "/compare/azure-translator-vs-crowdin",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Azure Translator vs Crowdin for AI agents, BB 72 vs B 69.6",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/azure-translator-vs-crowdin"
  },
  "tokens": {
    "markdown": 2350,
    "slim": 730
  },
  "version": 1
}
