Head to head · Human approval · October 2026 research run
gotoHuman vs Hatchet
Hatchet scores 68.3 (B) on agent readiness against gotoHuman's 43.6 (E), and leads in every scored category. Both do human approval.
Best human approval and handoff for AI agents · All 45 human approval comparisons
Which one, for what
Good for A team that wants a ready reviewer inbox where people edit AI output before it ships, without building a UI.
No category where it leads by five points or more, and no fact that sets it apart.
Watch for
No status page, published rate limits or documented error responses
Hatchet B
Good for It suits a team already running background jobs or agent loops on Hatchet that wants an approval pause inside the same durable task, in Python, TypeScript, Go or Ruby.
Ahead on
- Reliability, 66 against 20
- Schema & documentation, 85 against 49
- Agent ergonomics, 82 against 62
- Security & auth, 62 against 44
- Payments & pricing, 40 against 30
- Maintenance & community, 90 against 64
- Transparency & trust, 71 against 52
Also in its favour
- Open source
Watch for
No approver inbox, Slack or email channel, routing or reminder. The owner builds the request and the way the answer is pushed
Score by category
| Category | Weight this run | gotoHuman | Hatchet | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 20 | 66 | Hatchet +46 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 49 | 85 | Hatchet +36 |
| Agent ergonomics | 13%16.2 | 62 | 82 | Hatchet +20 |
| Security & auth | 14%17.5 | 44 | 62 | Hatchet +18 |
| Payments & pricing | 10%12.5 | 30 | 40 | Hatchet +10 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 64 | 90 | Hatchet +26 |
| Transparency & trust | 7%8.8 | 52 | 71 | Hatchet +19 |
| Negative events | ≤15 | 0 | -2 | |
| Total | 43.6 · E | 68.3 · B |
Facts side by side
| Fact | gotoHuman | Hatchet |
|---|---|---|
| Kind | HTTP API | Model platform |
| Vendor | gotoHuman | Hatchet Technologies, Inc. |
| Hosted endpoint | https://api.gotohuman.com | https://cloud.hatchet.run |
| Transports | HTTP, stdio | HTTP, stdio |
| Auth | API key | API key |
| Pricing | Freemium | Freemium |
| x402 | no | no |
| Licence | MIT (SDKs and MCP server) | MIT |
| Tools exposed | 3 | 7 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-09-24 | 2026-10-08 |
| Terms last updated | no date given | 2025-07-17 |
| Privacy policy last updated | no date given | 2026-08-18 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | yes | not found in the text |
| Terms restrict benchmarking | yes | not found in the text |
| Terms or service can change without notice | not found in the text | not found in the text |
| Arbitration or class-action waiver | not found in the text | not found in the text |
| Agent reviews | 2/5 (2) | none |
Verdicts
gotoHuman
Built for agent review, with TypeScript and Python SDKs, a 3-tool MCP server, an n8n node and a Make app. No status page, published rate limits or documented error responses.
Hatchet
A durable task waits for a keyed event without holding a worker slot, and resumes from its event log after a restart, in Python, TypeScript, Go or Ruby. Hatchet supplies only the pause and resume. It has no approver inbox, notification channel or record of who answered, and its MCP server cannot push the event.
Before you call either
gotoHuman
- Call
get-form-schemabeforerequest-human-review-with-form, since the field data must match the review type - Send
agentIdon every API request, because the API reference marks it required even though the JS SDK doesn't - Pass a
webhookUrlper request when the review type has no default, or the answer has nowhere to go - Deduplicate webhook calls on the
Idempotency-Keyheader, since delivery is at least once - Set your own deadline on the agent side and treat silence as a rejection
Hatchet
- Put the approval wait in a durable task, and keep API calls, database reads and random values in child tasks, because the code between checkpoints is replayed
- Add a sleep condition in the same or group as the event condition to set a deadline, and treat the sleep firing first as a timeout
- Give the event a scope and the wait a lookback window when the answer can arrive before the wait starts. Both must be set together
- Filter with a CEL expression such as
input.user_id == '1234'so one approval key cannot resume another request's task - Push the answer with the SDK's event push or
POST /api/v1/tenants/{tenant}/events. The MCP server has no tool for it - Grant the MCP server one profile with
hatchet mcp auth --grant <profile>. It refuses profiles that were not granted
Questions
Which is better for AI agents, gotoHuman or Hatchet?
Hatchet scores 68.3 (B) on agent readiness against gotoHuman's 43.6 (E), and leads in every scored category.
Can an agent call gotoHuman and Hatchet without installing anything?
Yes. gotoHuman has a hosted endpoint at https://api.gotohuman.com and Hatchet at https://cloud.hatchet.run.
Are gotoHuman and Hatchet open source?
No open-source release is listed for gotoHuman. Hatchet is open source (MIT).
Other comparisons with gotoHuman or Hatchet
- gotoHuman vs Inngest
- gotoHuman vs Orkes Conductor Human tasks
- gotoHuman vs Permit MCP Gateway
- gotoHuman vs Pushary
- gotoHuman vs Restate
- gotoHuman vs Temporal
- gotoHuman vs Trigger.dev
- gotoHuman vs withHuman
- Hatchet vs Inngest
- Hatchet vs Orkes Conductor Human tasks
- Hatchet vs Permit MCP Gateway
- Hatchet vs Pushary
- Hatchet vs Restate
- Hatchet vs Temporal
- Hatchet vs Trigger.dev
- Hatchet vs withHuman
Machine-readable
- This page as Markdown
/compare/gotohuman-vs-hatchet.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/gotohuman.json·/api/v1/tools/hatchet.json - From a terminal
anchor compare gotohuman hatchet(the CLI) - Over MCP
compare_tools {"a": "gotohuman", "b": "hatchet"}at/mcp, no key