Head to head · Hr employees · October 2026 research run

Factorial vs Humaans

Factorial scores 66.3 (B) on agent readiness against Humaans's 54.4 (C), and leads in 5 of 7 scored categories. Humaans leads on security & auth. Both do hr employees.

Which one, for what

Factorial B

Good for An agent working for a company that already runs Factorial and needs employee records, leave requests with approval, attendance clock-ins, recruiting or expenses through one API.

Ahead on

  • Reliability, 88 against 70
  • Schema & documentation, 77 against 44
  • Payments & pricing, 10 against 0
  • Maintenance & community, 84 against 56
  • Transparency & trust, 78 against 73

Watch for

An API key grants every scope, cannot be narrowed and does not expire

Humaans C

Good for An agent working for a company that already runs Humaans and needs to read and update profiles, job roles and compensation, book and approve time away, and attach documents with a token narrowed by scope.

Ahead on

  • Security & auth, 70 against 65

Watch for

No OpenAPI file or Markdown docs. The reference is one HTML page of about 2 MB

Score by category

CategoryWeight this runFactorialHumaansEdge
Reliability16%208870Factorial +18
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.27744Factorial +33
Agent ergonomics13%16.25860Humaans +2
Security & auth14%17.56570Humaans +5
Payments & pricing10%12.5100Factorial +10
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88456Factorial +28
Transparency & trust7%8.87873Factorial +5
Negative events≤1500
Total66.3 · B54.4 · C

Facts side by side

FactFactorialHumaans
KindHTTP APIHTTP API
VendorEveryday Software, S.L.Humaans Software UK Ltd
Hosted endpointhttps://api.factorialhr.comhttps://app.humaans.io/api
TransportsHTTPHTTP
AuthOAuth or keyOAuth or key
PricingPaidPaid
x402nono
LicenceProprietary service under Factorial's terms and conditions. The TypeScript and Python SDKs are MITProprietary service under Humaans' Terms of Service
Read-only variant documentednono
llms.txtyesno
Last release2026-10-052026-09-10
Terms last updatedno date given2026-10-06
Privacy policy last updated2026-01-012026-10-06
Customer content may train modelsnot found in the textnot found in the text
Terms restrict automated accessnot found in the textyes
Terms restrict benchmarkingyesyes
Terms or service can change without noticenot found in the textnot found in the text
Arbitration or class-action waivernot found in the textnot found in the text
Popularity7 stars, 1.4k npm/wk, 1.1k PyPI/wknone

Verdicts

Factorial

A public OpenAPI 3.1 definition covers 615 operations, including leave approval and employee termination, and OAuth apps can be limited to 33 scopes. API keys always grant every scope and never expire. No idempotency keys exist, and a request to an expired API version is answered in an older schema with no error.

Humaans

API tokens are limited by eight scopes and the creator's role, can expire and can be rotated with a seven-day overlap, and rate limits are published with Retry-After on 429. No OpenAPI file, API changelog, official SDK or idempotency keys were found, and prices are by quote, so an agent needs a paying customer's token.

Before you call either

Factorial

  1. Send an API key in x-api-key and an OAuth token in Authorization: Bearer. The key is JWT-formatted but is rejected as a bearer token
  2. Pin the version in the path, such as /api/2026-10-01/resources/..., and migrate within a year. Expired versions answer in an older schema without an error
  3. Treat a 200 with an empty body as a credential from the other environment. Production is api.factorialhr.com and demo is api.eu2.demo.factorial.dev
  4. Page with limit=100 and pass meta.end_cursor as after_id. A larger limit is capped at 100
  5. Check whether a record exists before retrying a create. Retry only 429 and 5xx with backoff, and branch on code for 422 because messages are localised

Humaans

  1. Send Authorization: Bearer <token> to https://app.humaans.io/api. Call GET /api/token-info first to read the token's scopes and expiry
  2. Expect a role limit as well as scopes. A token made by a user with the User role reads only public company data and that person's own profile
  3. Page with $limit (maximum 250) and $skip, and pass -g to curl because parameters use $ and []
  4. On 429 wait the seconds in Retry-After. The bucket holds 40 requests and refills at 7 a second per token
  5. Check state before retrying a POST. No idempotency key exists, and DELETE /api/people/:id cannot be undone

Questions

Which is better for AI agents, Factorial or Humaans?

Factorial scores 66.3 (B) on agent readiness against Humaans's 54.4 (C), and leads in 5 of 7 scored categories. Humaans leads on security & auth.

Do Factorial and Humaans need an API key?

Both take an API key or an OAuth sign-in.

Can an agent call Factorial and Humaans without installing anything?

Yes. Factorial has a hosted endpoint at https://api.factorialhr.com and Humaans at https://app.humaans.io/api.

Other comparisons with Factorial or Humaans

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.