Fillout vs Formspree
Fillout scores higher on the AgentReady, 56/100 against 44/100. They differ on 8 of the 41 signals. Which ones decides whether an agent can adopt them without a person watching.
What each one is
Fillout. Fillout is an all-in-one form solution for creating forms, quizzes, and surveys.
Formspree. Formspree is a production-ready form backend service that handles form submissions end-to-end with storage, deliverability, spam protection and integration, allowing developers to add forms to their websites without building their own backend infrastructure.
Where Fillout is ahead
Fillout passes public docs discoverable, and Formspree does not. That is discover, whether an agent can find the product at all without being told it exists.
It also holds understand: structured api reference. Formspree misses it.
And on adopt, no mandatory sales call, fast time to first request and copyable quickstart. Formspree misses those.
Finally, on operate, structured, predictable output. Formspree misses it.
Where Formspree is ahead
Formspree passes cli available, and Fillout does not. That is adopt, whether an agent can get a key and make its first successful call without a human in the loop.
It also holds operate: retry behavior documented. Fillout misses it.
What neither does
Both fail llms-full.txt / full agent docs, mcp discoverable, openapi / spec quality, authentication documented, request examples provided, response examples provided, errors and status codes documented, limits / constraints documented, programmatic credential creation, official python sdk, mcp integration available, machine-readable errors, idempotency support, rate-limit behavior predictable, agent compatibility verified. If your agent needs any of those, you will be building it yourself either way.
Score, pillar by pillar
The AgentReady splits into four pillars, scored separately, because a product can be easy to find and still impossible to adopt.
Discover. Fillout leads 80 to 67. Fillout misses llms-full.txt / full agent docs, mcp discoverable; Formspree misses public docs discoverable, llms-full.txt / full agent docs, mcp discoverable.
Understand is whether an agent can read the docs and work out how the API behaves before calling it. Fillout leads 38 to 23. Fillout misses openapi / spec quality, authentication documented, request examples provided, response examples provided, errors and status codes documented, limits / constraints documented; Formspree misses structured api reference, openapi / spec quality, authentication documented, request examples provided, response examples provided, errors and status codes documented, limits / constraints documented.
Adopt is whether an agent can get a key and make its first successful call without a human in the loop. Fillout leads 60 to 45. Fillout misses programmatic credential creation, official python sdk, cli available, mcp integration available; Formspree misses no mandatory sales call, programmatic credential creation, fast time to first request, copyable quickstart, official python sdk, mcp integration available.
Operate. Fillout leads 47 to 41. Fillout misses machine-readable errors, retry behavior documented, idempotency support, rate-limit behavior predictable, agent compatibility verified; Formspree misses structured, predictable output, machine-readable errors, idempotency support, rate-limit behavior predictable, agent compatibility verified.
Pricing
Fillout starts at $15/mo and has a free tier. Formspree starts at $10/mo and has a free tier.
| Fillout plans | Formspree plans |
|---|---|
| Free $0/month | Free $0 /mo |
| Starter $15/month | Personal $10 /mo |
| Pro $40/month | Professional $20 /mo |
| - | Business $60 /mo |
| - | Custom Custom |
Signal by signal
| Signal | Fillout | Formspree |
|---|---|---|
| AgentReady | 56 | 44 |
| Discovery | 80 | 67 |
| Understanding | 38 | 23 |
| Adoption | 60 | 45 |
| Operability | 47 | 41 |
| Public API | Yes | Yes |
| MCP server | No | No |
| OpenAPI spec | Yes | Unknown |
| CLI | Unknown | Yes |
| llms.txt | Yes | Yes |
| Self-serve signup | Yes | Yes |
| Free tier | Yes | Yes |
Which to pick
Fillout clears more of the signals an agent needs, so it is the safer default for unattended use. Full profiles: Fillout and Formspree. Alternatives to each: Fillout, Formspree.
An agent can fetch this as data: POST /v1/compare {"slugs": ["fillout", "formspree"]}