{
  "data": {
    "a": {
      "slug": "alchemer",
      "name": "Alchemer",
      "vendor": "Alchemer LLC",
      "vendorUrl": "https://www.alchemer.com",
      "kind": "http-api",
      "category": "forms",
      "summary": "Alchemer, formerly SurveyGizmo, is a survey and customer feedback platform. Agents reach it through REST API v5, which creates surveys, pages and questions, reads and writes responses, and manages contacts, email campaigns, quotas and account users.",
      "url": "https://www.anchorterminal.com/tools/alchemer",
      "markdownUrl": "https://www.anchorterminal.com/tools/alchemer.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/alchemer.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/alchemer.json",
      "license": "Proprietary service under the Alchemer Software as a Service Agreement",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.alchemer.com/v5",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Sales approval on the published plans. The pricing page says API access is for Business Platform accounts, which are quoted by sales, and the API documentation says it is for enterprise customers. An account administrator creates an API key and secret for each user under Security, API Access, and the key works with that user's team roles. The documented call sends `api_token` and `api_token_secret` as URL query parameters. Regenerating a key deletes the old one. OAuth 1.0 with a consumer key and secret is the alternative, with no scopes. Administrators can restrict the accepted HTTP methods and OAuth for the whole account, or block API access for one user.",
      "pricing": "paid",
      "pricingNotes": "API access is sold with the Business Platform plan, quoted by sales, with no public price. Small-team plans list at $55, $165 and $275 a user a month (Collaborator, Professional, Full Access), or $315, $1,075 and $1,895 a user a year, and the pricing page does not include the API in them. A 7-day trial needs no card, and a help article last updated on 12 May 2025 says a trial account may make 60 API calls a minute once its email address is verified. Nothing is priced per call (https://www.alchemer.com/plans-pricing/).",
      "priceSummary": "$55 / seat-mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API documentation, the pricing page or the Software as a Service Agreement (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://apihelp.alchemer.com/help",
      "llmsTxt": "https://www.alchemer.com/llms.txt",
      "capabilities": [
        "forms.create",
        "forms.surveys",
        "forms.responses",
        "forms.webhooks",
        "forms.embed"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "api-key",
        "oauth",
        "webhooks",
        "sales-led",
        "enterprise",
        "iso27001",
        "soc2",
        "free-trial"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 41.4,
        "grade": "E",
        "agentReady": false,
        "rank": 798,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 11,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 47,
          "maintenance": 45,
          "payments": 20,
          "reliability": 35,
          "schema": 45,
          "security": 44,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Alchemer's REST API v5 covers surveys, questions, responses, contacts and email campaigns in 101 documented operations, with a reference rewritten in April 2026. The pricing page limits API access to Business Platform accounts quoted by sales. Keys travel in the URL query string, and no status page, OpenAPI document or SDK was found.",
        "bestFor": "A company already on an Alchemer Business Platform contract that wants an agent to build surveys, load contacts, send campaigns and export responses.",
        "strengths": [
          "101 documented v5 operations across 21 resources, each with typed parameters, a cURL request and an example response",
          "Response lists page up to 500 a request, with filters on status, dates, questions and URL variables and four sort orders",
          "API keys are issued per user and inherit that user's team roles. An account can restrict which HTTP methods the API accepts",
          "Four regional hosts for accounts in the United States, European Union, Canada and Australia",
          "Sunset policy says older API versions stay stable and keep working for at least two years"
        ],
        "weaknesses": [
          "The pricing page says API access is for Business Platform accounts only, which are quoted by sales",
          "The documented call puts `api_token` and `api_token_secret` in the URL query string. The alternative is OAuth 1.0, with no scopes",
          "No status page was found. status.alchemer.com redirects to the home page of www.surveygizmo.com",
          "No OpenAPI document, official SDK or idempotency key was found, and writes are sent as query parameters",
          "The Software as a Service Agreement bars disclosing benchmark test data and load or penetration testing, and allows aggregated customer data to train machine learning models"
        ],
        "agentNotes": [
          "Use the host for the account's region (`api.alchemer.com`, `api.alchemer.eu`, `api.alchemer-ca.com` or `api.au.alchemer.com`). The wrong host returns a 401 login failure even with valid keys",
          "Create with PUT and update with POST. The API reverses the usual meaning of the two methods",
          "Do not repeat an identical request inside 60 seconds. GET results are cached for 60 seconds and a repeat can return 429",
          "Stay under 240 requests a minute for the account and slow down when the `X-SG-Warning` header appears",
          "Wait up to five minutes before reading back a response that was just submitted, and expect a 500 after a 30 second timeout"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 41.4
          }
        ],
        "editorialScores": {
          "ergonomics": 47,
          "maintenance": 45,
          "payments": 20,
          "reliability": 35,
          "schema": 45,
          "security": 44,
          "transparency": 49
        },
        "provenanceScore": 73
      },
      "connect": {
        "http": "curl -X GET \"https://api.alchemer.com/v5/survey?api_token=YOUR_API_TOKEN\u0026api_token_secret=YOUR_API_TOKEN_SECRET\""
      },
      "letme": {
        "capability": "https://letme.dev/forms.create",
        "tool": "https://letme.dev/alchemer"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Collaborator",
          "unit": "seat-month",
          "usd": 55,
          "note": "Billed monthly, or $315 a user a year. 75,000 responses a year. The pricing page does not include API access"
        },
        {
          "item": "Professional",
          "unit": "seat-month",
          "usd": 165,
          "note": "Billed monthly, or $1,075 a user a year, up to 3 users. The pricing page does not include API access"
        },
        {
          "item": "Full Access",
          "unit": "seat-month",
          "usd": 275,
          "note": "Billed monthly, or $1,895 a user a year, up to 3 users. The pricing page does not include API access"
        }
      ],
      "provenance": {
        "legalEntity": "Alchemer LLC",
        "domain": "alchemer.com",
        "domainRegistered": "2015-01-20",
        "endpointOnVendorDomain": true,
        "terms": "https://www.alchemer.com/service-agreement/",
        "privacy": "https://www.alchemer.com/privacy/",
        "statusPage": "",
        "changelog": "https://help.alchemer.com/help/release-notes",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Alchemer Software as a Service Agreement, last updated 14 January 2026, names Alchemer LLC, 168 Centennial Parkway, Suite 250, Louisville, Colorado 80027, under Colorado law. Section 15.1 grants a revocable right to use the API.",
          "https://www.alchemer.com/terms/ is the Website Terms of Use, last modified 12 October 2020, in the name of Widgix, LLC dba Alchemer. It does not govern the service.",
          "The privacy policy, last updated 23 April 2026, covers customer and respondent data on app.alchemer.com as well as the website.",
          "No status page was found. status.alchemer.com answers 301 to https://www.surveygizmo.com/, and the home page, the security page and the API documentation link none.",
          "https://www.alchemer.com/.well-known/security.txt returned 404 to WebFetch. www.alchemer.com answered 403 to curl for every page except robots.txt, so its pages were read with WebFetch.",
          "The changelog link is the product-wide release notes list. There is no separate API changelog.",
          "The API answers at api.alchemer.com, api.alchemer.eu, api.alchemer-ca.com and api.au.alchemer.com.",
          "RDAP for alchemer.com gives a registration date of 2015-01-20. The company took the Alchemer name in 2021 per its llms.txt."
        ],
        "score": 73
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/alchemer.json",
      "live": {
        "slug": "alchemer",
        "probe": {
          "target": "https://api.alchemer.com/v5",
          "method": "get",
          "lastAt": "2026-10-09T11:46:20.940632998Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 289,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 289,
          "p95ms24h": 314,
          "samples24h": 44,
          "samples30d": 44,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 44,
              "ok": 44
            }
          ]
        },
        "updatedAt": "2026-10-09T11:46:20.940632998Z"
      }
    },
    "answer": "Tally scores 60.6 (C) on agent readiness against Alchemer's 41.4 (E), and leads in every scored category.",
    "b": {
      "slug": "tally",
      "name": "Tally",
      "vendor": "Tally BV",
      "vendorUrl": "https://tally.so",
      "kind": "http-api",
      "category": "forms",
      "summary": "Tally is a form and survey builder from Tally BV in Ghent, Belgium. Agents create forms, read submissions and manage webhooks through a REST API at api.tally.so, or through a hosted MCP server that is in beta.",
      "url": "https://www.anchorterminal.com/tools/tally",
      "markdownUrl": "https://www.anchorterminal.com/tools/tally.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/tally.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/tally.json",
      "license": "Proprietary service under Tally's terms and conditions. The OpenAPI spec names MIT as its own licence",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.tally.so",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Self-serve. The REST API takes a Bearer API key that a signed-in user creates at tally.so/settings/api-keys. A key is tied to that user, carries all of the user's access, has no scopes and stops working when the user leaves the organisation. The MCP server takes the same key or OAuth 2 (authorisation code grant with PKCE S256, refresh tokens and dynamic client registration), where a person signs in to Tally and approves the client. The server metadata lists the scopes user, forms, responses, webhooks and mcp. No app review, partner approval or sales step was found.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with unlimited forms and submissions under a fair use policy, and the API and the MCP server are free on every plan, so an agent's owner can start without a contract. Pro and Business are shown at $24 and $74 a month, with a monthly and yearly toggle and two months off for yearly billing. We could not establish which billing period the displayed figures belong to. Workspace and folder endpoints need Pro. There is no sandbox or test mode in the reviewed documentation (checked 2026-10-08).",
      "priceSummary": "$24 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, the OpenAPI spec or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developers.tally.so",
      "llmsTxt": "https://developers.tally.so/llms.txt",
      "openapi": "https://developers.tally.so/api-reference/openapi.json",
      "capabilities": [
        "forms.create",
        "forms.responses",
        "forms.webhooks",
        "forms.surveys",
        "forms.embed"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "oauth",
        "api-key",
        "openapi",
        "llms-txt",
        "webhooks",
        "free-tier",
        "closed-source",
        "eu-hosted",
        "status-page"
      ],
      "lastRelease": "2026-09-11",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 60.6,
        "grade": "C",
        "agentReady": false,
        "rank": 457,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 50,
          "maintenance": 66,
          "payments": 30,
          "reliability": 75,
          "schema": 82,
          "security": 47,
          "transparency": 73
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The REST API is free on every plan, with a public OpenAPI 3.0 spec, llms.txt, date-based versions and typed block schemas for building forms. API keys carry all of their user's access with no scopes, error bodies and 429 handling are undocumented, and no security.txt, certification or bug bounty was found.",
        "bestFor": "An agent that builds a form from a description, publishes it and reads the answers for an owner on a small budget, since the whole API is free.",
        "strengths": [
          "Public OpenAPI 3.0.1 spec with 38 operations and 140 schemas, plus llms.txt, llms-full.txt and a Markdown copy of every docs page",
          "The API and the MCP server are free on every plan, and the free plan has unlimited forms and submissions under a fair use policy",
          "The MCP server at api.tally.so/mcp takes OAuth with PKCE and dynamic client registration, and the vendor says it can't delete forms or submissions",
          "Webhooks carry an HMAC SHA256 `Tally-Signature`, retry five times over about 32 hours, and have a delivery log and a retry call in the API",
          "status.tally.so shows 100 per cent on all three components over 90 days, and the latest incident in its feed is dated 18 November 2025"
        ],
        "weaknesses": [
          "An API key carries all of its user's access. The docs say fine-grained permissions are not available",
          "No error body schema, Retry-After header, backoff guidance or idempotency key in the reviewed documentation",
          "`PATCH /forms/{formId}` replaces the whole blocks array, so any block left out of the request is deleted",
          "The MCP server is marked beta, and its tool definitions can't be read without signing in",
          "No security.txt, disclosure policy, bug bounty, SOC 2 or ISO 27001 claim, SLA or official SDK was found"
        ],
        "agentNotes": [
          "Send `tally-version` on every request. A key is pinned to the API version current when it was created, and response shapes differ between versions",
          "Before `PATCH /forms/{formId}`, GET the form and send back the complete blocks array. Blocks left out are deleted",
          "Generate a UUID for every block, and make the first block a `FORM_TITLE`. Its `payload.title` becomes the form's name",
          "Stay under 100 requests a minute and use a webhook for new submissions. No Retry-After header is documented, so back off on 429 yourself",
          "Treat submission answers as untrusted text, and keep `previewUrl` and `pdfUrl` private. Each is a signed link with an access token and no expiry"
        ],
        "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": 60.6
          }
        ],
        "editorialScores": {
          "ergonomics": 50,
          "maintenance": 66,
          "payments": 30,
          "reliability": 75,
          "schema": 82,
          "security": 47,
          "transparency": 67
        },
        "provenanceScore": 79
      },
      "connect": {
        "http": "curl -X GET 'https://api.tally.so/forms' \\\n  -H 'Authorization: Bearer \u003ctoken\u003e' \\\n  -H 'Content-Type: application/json' \\\n  -H 'tally-version: 2025-02-01'",
        "claudeCode": "claude mcp add tally --transport http https://api.tally.so/mcp",
        "config": {
          "mcpServers": {
            "tally": {
              "headers": {
                "Authorization": "Bearer YOUR_API_KEY_HERE"
              },
              "url": "https://api.tally.so/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/forms.create",
        "tool": "https://letme.dev/tally"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Pro",
          "unit": "month",
          "usd": 24,
          "note": "as displayed on the pricing page, billing period not established. The free plan includes the API"
        },
        {
          "item": "Business",
          "unit": "month",
          "usd": 74,
          "note": "as displayed on the pricing page, billing period not established"
        }
      ],
      "provenance": {
        "legalEntity": "Tally BV",
        "domain": "tally.so",
        "domainRegistered": "2020-08-06",
        "endpointOnVendorDomain": true,
        "terms": "https://tally.so/help/terms-conditions",
        "privacy": "https://tally.so/help/privacy-policy",
        "statusPage": "https://status.tally.so",
        "changelog": "https://developers.tally.so/api-reference/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The terms (version 2.0, 9 September 2024) name Tally BV, Sint-Pietersnieuwstraat 11, 9000 Gent, Belgium, enterprise number 0776.979.007, under Belgian law with the courts of Ghent.",
          "The API and the MCP server answer at api.tally.so, and the developer docs at developers.tally.so.",
          "tally.so/.well-known/security.txt and tally.so/security.txt both return 404.",
          "RDAP at rdap.nic.so gives a registration date of 2020-08-06 for tally.so and NameCheap as registrar.",
          "A second changelog for the product as a whole is at tally.so/changelog."
        ],
        "score": 79
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/tally.json",
      "live": {
        "slug": "tally",
        "probe": {
          "target": "https://api.tally.so",
          "method": "get",
          "lastAt": "2026-10-09T11:46:42.294054016Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 61,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 84,
          "p95ms24h": 201,
          "samples24h": 218,
          "samples30d": 218,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 93,
              "ok": 93
            },
            {
              "date": "2026-10-09",
              "probes": 125,
              "ok": 125
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.tally.so",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-09T07:58:34.992462149Z"
        },
        "securityTxt": {
          "url": "https://tally.so/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:55.978667631Z"
        },
        "pages": [
          {
            "url": "https://developers.tally.so/api-reference/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:18:03.02632096Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "cc08fa442aff"
          },
          {
            "url": "https://tally.so/help/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:25:05.667847097Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1d8b6671d903"
          },
          {
            "url": "https://tally.so/help/terms-conditions",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:25:07.91997507Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "f67a529c212c"
          }
        ],
        "updatedAt": "2026-10-09T11:46:42.294054016Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Alchemer LLC",
        "b": "Tally BV",
        "name": "Vendor"
      },
      {
        "a": "https://api.alchemer.com/v5",
        "b": "https://api.tally.so",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Alchemer Software as a Service Agreement",
        "b": "Proprietary service under Tally's terms and conditions. The OpenAPI spec names MIT as its own licence",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-01",
        "b": "2026-09-11",
        "name": "Last release"
      },
      {
        "a": "2026-01-14",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2026-04-23",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      }
    ],
    "faq": [
      {
        "answer": "Tally scores 60.6 (C) on agent readiness against Alchemer's 41.4 (E), and leads in every scored category.",
        "question": "Which is better for AI agents, Alchemer or Tally?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Alchemer and Tally need an API key?"
      },
      {
        "answer": "Yes. Alchemer has a hosted endpoint at https://api.alchemer.com/v5 and Tally at https://api.tally.so.",
        "question": "Can an agent call Alchemer and Tally without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "A company already on an Alchemer Business Platform contract that wants an agent to build surveys, load contacts, send campaigns and export responses.",
        "slug": "alchemer",
        "watchFor": "The pricing page says API access is for Business Platform accounts only, which are quoted by sales"
      },
      {
        "aheadOn": [
          "Reliability, 75 against 35",
          "Schema \u0026 documentation, 82 against 45",
          "Payments \u0026 pricing, 30 against 20",
          "Maintenance \u0026 community, 66 against 45",
          "Transparency \u0026 trust, 73 against 61"
        ],
        "also": null,
        "goodFor": "An agent that builds a form from a description, publishes it and reads the answers for an owner on a small budget, since the whole API is free.",
        "slug": "tally",
        "watchFor": "An API key carries all of its user's access. The docs say fine-grained permissions are not available"
      }
    ],
    "job": {
      "capability": "forms.create",
      "name": "Forms create"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/alchemer-vs-fillout.json",
        "title": "Alchemer vs Fillout",
        "url": "https://www.anchorterminal.com/compare/alchemer-vs-fillout"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alchemer-vs-paperform.json",
        "title": "Alchemer vs Paperform",
        "url": "https://www.anchorterminal.com/compare/alchemer-vs-paperform"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alchemer-vs-wufoo.json",
        "title": "Alchemer vs Wufoo",
        "url": "https://www.anchorterminal.com/compare/alchemer-vs-wufoo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fillout-vs-tally.json",
        "title": "Fillout vs Tally",
        "url": "https://www.anchorterminal.com/compare/fillout-vs-tally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paperform-vs-tally.json",
        "title": "Paperform vs Tally",
        "url": "https://www.anchorterminal.com/compare/paperform-vs-tally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/tally-vs-wufoo.json",
        "title": "Tally vs Wufoo",
        "url": "https://www.anchorterminal.com/compare/tally-vs-wufoo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alchemer-vs-formbricks.json",
        "title": "Alchemer vs Formbricks",
        "url": "https://www.anchorterminal.com/compare/alchemer-vs-formbricks"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alchemer-vs-formstack.json",
        "title": "Alchemer vs Formstack",
        "url": "https://www.anchorterminal.com/compare/alchemer-vs-formstack"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alchemer-vs-google-forms.json",
        "title": "Alchemer vs Google Forms API",
        "url": "https://www.anchorterminal.com/compare/alchemer-vs-google-forms"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alchemer-vs-jotform.json",
        "title": "Alchemer vs Jotform",
        "url": "https://www.anchorterminal.com/compare/alchemer-vs-jotform"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alchemer-vs-surveymonkey.json",
        "title": "Alchemer vs SurveyMonkey",
        "url": "https://www.anchorterminal.com/compare/alchemer-vs-surveymonkey"
      },
      {
        "json": "https://www.anchorterminal.com/compare/alchemer-vs-typeform.json",
        "title": "Alchemer vs Typeform",
        "url": "https://www.anchorterminal.com/compare/alchemer-vs-typeform"
      },
      {
        "json": "https://www.anchorterminal.com/compare/formstack-vs-tally.json",
        "title": "Formstack vs Tally",
        "url": "https://www.anchorterminal.com/compare/formstack-vs-tally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-forms-vs-tally.json",
        "title": "Google Forms API vs Tally",
        "url": "https://www.anchorterminal.com/compare/google-forms-vs-tally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jotform-vs-tally.json",
        "title": "Jotform vs Tally",
        "url": "https://www.anchorterminal.com/compare/jotform-vs-tally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/surveymonkey-vs-tally.json",
        "title": "SurveyMonkey vs Tally",
        "url": "https://www.anchorterminal.com/compare/surveymonkey-vs-tally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/tally-vs-typeform.json",
        "title": "Tally vs Typeform",
        "url": "https://www.anchorterminal.com/compare/tally-vs-typeform"
      },
      {
        "json": "https://www.anchorterminal.com/compare/formbricks-vs-tally.json",
        "title": "Formbricks vs Tally",
        "url": "https://www.anchorterminal.com/compare/formbricks-vs-tally"
      }
    ],
    "scores": [
      {
        "alchemer": 35,
        "by": 40,
        "edge": "tally",
        "key": "reliability",
        "name": "Reliability",
        "tally": 75,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "alchemer": 45,
        "by": 37,
        "edge": "tally",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "tally": 82,
        "weight": 13
      },
      {
        "alchemer": 47,
        "by": 3,
        "edge": "tally",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "tally": 50,
        "weight": 13
      },
      {
        "alchemer": 44,
        "by": 3,
        "edge": "tally",
        "key": "security",
        "name": "Security \u0026 auth",
        "tally": 47,
        "weight": 14
      },
      {
        "alchemer": 20,
        "by": 10,
        "edge": "tally",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "tally": 30,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "alchemer": 45,
        "by": 21,
        "edge": "tally",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "tally": 66,
        "weight": 7
      },
      {
        "alchemer": 61,
        "by": 12,
        "edge": "tally",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "tally": 73,
        "weight": 7
      }
    ],
    "summary": "Tally scores 60.6 (C) on agent readiness against Alchemer's 41.4 (E), and leads in every scored category. Both do forms create.",
    "verdicts": {
      "alchemer": "Alchemer's REST API v5 covers surveys, questions, responses, contacts and email campaigns in 101 documented operations, with a reference rewritten in April 2026. The pricing page limits API access to Business Platform accounts quoted by sales. Keys travel in the URL query string, and no status page, OpenAPI document or SDK was found.",
      "tally": "The REST API is free on every plan, with a public OpenAPI 3.0 spec, llms.txt, date-based versions and typed block schemas for building forms. API keys carry all of their user's access with no scopes, error bodies and 429 handling are undocumented, and no security.txt, certification or bug bounty was found."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/alchemer-vs-tally",
    "json": "https://www.anchorterminal.com/compare/alchemer-vs-tally.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/alchemer-vs-tally.md",
    "slim": "https://www.anchorterminal.com/compare/alchemer-vs-tally.min.md"
  },
  "markdown": "Tally scores 60.6 (C) on agent readiness against Alchemer's 41.4 (E), and leads in every scored category. Both do forms create.\n\n- Alchemer: grade E, 41.4/100, rank #798 of 842. Markdown https://www.anchorterminal.com/tools/alchemer.md · JSON https://www.anchorterminal.com/api/v1/tools/alchemer.json\n- Tally: grade C, 60.6/100, rank #457 of 842. Markdown https://www.anchorterminal.com/tools/tally.md · JSON https://www.anchorterminal.com/api/v1/tools/tally.json\n\n## Which one, for what\n\n### Alchemer (E)\n\nGood for: A company already on an Alchemer Business Platform contract that wants an agent to build surveys, load contacts, send campaigns and export responses.\n\nWatch for: The pricing page says API access is for Business Platform accounts only, which are quoted by sales\n\n### Tally (C)\n\nGood for: An agent that builds a form from a description, publishes it and reads the answers for an owner on a small budget, since the whole API is free.\n\nAhead on:\n- Reliability, 75 against 35\n- Schema \u0026 documentation, 82 against 45\n- Payments \u0026 pricing, 30 against 20\n- Maintenance \u0026 community, 66 against 45\n- Transparency \u0026 trust, 73 against 61\n\nWatch for: An API key carries all of its user's access. The docs say fine-grained permissions are not available\n\n\n## Score by category\n\n| Category | Weight | Alchemer | Tally | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 35 | 75 | Tally +40 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 45 | 82 | Tally +37 |\n| Agent ergonomics | 13% (16.2 this run) | 47 | 50 | Tally +3 |\n| Security \u0026 auth | 14% (17.5 this run) | 44 | 47 | Tally +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 30 | Tally +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 45 | 66 | Tally +21 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 61 | 73 | Tally +12 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **41.4 · E** | **60.6 · C** | |\n\n## Facts side by side\n\n| Fact | Alchemer | Tally |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Alchemer LLC | Tally BV |\n| Hosted endpoint | `https://api.alchemer.com/v5` | `https://api.tally.so` |\n| Transports | HTTP | HTTP, Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under the Alchemer Software as a Service Agreement | Proprietary service under Tally's terms and conditions. The OpenAPI spec names MIT as its own licence |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-01 | 2026-09-11 |\n| Terms last updated | 2026-01-14 | no date given |\n| Privacy policy last updated | 2026-04-23 | no date given |\n| Customer content may train models | yes | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | yes | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n\n## Verdicts\n\n**Alchemer.** Alchemer's REST API v5 covers surveys, questions, responses, contacts and email campaigns in 101 documented operations, with a reference rewritten in April 2026. The pricing page limits API access to Business Platform accounts quoted by sales. Keys travel in the URL query string, and no status page, OpenAPI document or SDK was found.\n\n**Tally.** The REST API is free on every plan, with a public OpenAPI 3.0 spec, llms.txt, date-based versions and typed block schemas for building forms. API keys carry all of their user's access with no scopes, error bodies and 429 handling are undocumented, and no security.txt, certification or bug bounty was found.\n\n## Before you call either\n\n### Alchemer\n\n1. Use the host for the account's region (`api.alchemer.com`, `api.alchemer.eu`, `api.alchemer-ca.com` or `api.au.alchemer.com`). The wrong host returns a 401 login failure even with valid keys\n2. Create with PUT and update with POST. The API reverses the usual meaning of the two methods\n3. Do not repeat an identical request inside 60 seconds. GET results are cached for 60 seconds and a repeat can return 429\n4. Stay under 240 requests a minute for the account and slow down when the `X-SG-Warning` header appears\n5. Wait up to five minutes before reading back a response that was just submitted, and expect a 500 after a 30 second timeout\n\n### Tally\n\n1. Send `tally-version` on every request. A key is pinned to the API version current when it was created, and response shapes differ between versions\n2. Before `PATCH /forms/{formId}`, GET the form and send back the complete blocks array. Blocks left out are deleted\n3. Generate a UUID for every block, and make the first block a `FORM_TITLE`. Its `payload.title` becomes the form's name\n4. Stay under 100 requests a minute and use a webhook for new submissions. No Retry-After header is documented, so back off on 429 yourself\n5. Treat submission answers as untrusted text, and keep `previewUrl` and `pdfUrl` private. Each is a signed link with an access token and no expiry\n\n## Questions\n\n### Which is better for AI agents, Alchemer or Tally?\n\nTally scores 60.6 (C) on agent readiness against Alchemer's 41.4 (E), and leads in every scored category.\n\n### Do Alchemer and Tally need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Alchemer and Tally without installing anything?\n\nYes. Alchemer has a hosted endpoint at https://api.alchemer.com/v5 and Tally at https://api.tally.so.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/alchemer-vs-tally.json, and with the fewest tokens: https://www.anchorterminal.com/compare/alchemer-vs-tally.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"alchemer\", \"b\": \"tally\"}`. From a terminal: `anchor compare alchemer tally`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/alchemer.json and https://www.anchorterminal.com/api/v1/tools/tally.json\n\n## Other comparisons with Alchemer or Tally\n\n- [Alchemer vs Fillout](https://www.anchorterminal.com/compare/alchemer-vs-fillout.md)\n- [Alchemer vs Paperform](https://www.anchorterminal.com/compare/alchemer-vs-paperform.md)\n- [Alchemer vs Wufoo](https://www.anchorterminal.com/compare/alchemer-vs-wufoo.md)\n- [Fillout vs Tally](https://www.anchorterminal.com/compare/fillout-vs-tally.md)\n- [Paperform vs Tally](https://www.anchorterminal.com/compare/paperform-vs-tally.md)\n- [Tally vs Wufoo](https://www.anchorterminal.com/compare/tally-vs-wufoo.md)\n- [Alchemer vs Formbricks](https://www.anchorterminal.com/compare/alchemer-vs-formbricks.md)\n- [Alchemer vs Formstack](https://www.anchorterminal.com/compare/alchemer-vs-formstack.md)\n- [Alchemer vs Google Forms API](https://www.anchorterminal.com/compare/alchemer-vs-google-forms.md)\n- [Alchemer vs Jotform](https://www.anchorterminal.com/compare/alchemer-vs-jotform.md)\n- [Alchemer vs SurveyMonkey](https://www.anchorterminal.com/compare/alchemer-vs-surveymonkey.md)\n- [Alchemer vs Typeform](https://www.anchorterminal.com/compare/alchemer-vs-typeform.md)\n- [Formstack vs Tally](https://www.anchorterminal.com/compare/formstack-vs-tally.md)\n- [Google Forms API vs Tally](https://www.anchorterminal.com/compare/google-forms-vs-tally.md)\n- [Jotform vs Tally](https://www.anchorterminal.com/compare/jotform-vs-tally.md)\n- [SurveyMonkey vs Tally](https://www.anchorterminal.com/compare/surveymonkey-vs-tally.md)\n- [Tally vs Typeform](https://www.anchorterminal.com/compare/tally-vs-typeform.md)\n- [Formbricks vs Tally](https://www.anchorterminal.com/compare/formbricks-vs-tally.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "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": "Alchemer vs Tally",
        "url": ""
      }
    ],
    "description": "Tally scores 60.6 (C) on agent readiness against Alchemer's 41.4 (E), and leads in every scored category. Both do forms create. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Alchemer E 41.4",
      "Tally C 60.6",
      "scores"
    ],
    "h1": "Alchemer vs Tally",
    "image": "https://www.anchorterminal.com/assets/og/compare-alchemer-vs-tally.png",
    "path": "/compare/alchemer-vs-tally",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Alchemer vs Tally for AI agents, E 41.4 vs C 60.6 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/alchemer-vs-tally"
  },
  "tokens": {
    "markdown": 2150,
    "slim": 630
  },
  "version": 1
}
