HiBob, for the structure behind the numbers.
An admin connects HiBob once. Hatch reads roles, teams and reporting lines, so performance is read next to the job someone actually holds.
How it works.
Hatch needs to know who reports to whom before it can tell you where capacity sits. HiBob supplies that, and it stays current on its own.
Connected once, then nobody thinks about it.
An admin connects HiBob
One admin authorises it. Records stay in HiBob and nothing is copied out.
Hatch starts reading
Hatch reads the work already happening in the tool. Nobody answers a form, nobody fills in a survey, and nothing gets migrated.
CREATE MATERIALIZED VIEW revenue_by_min AS SELECT date_trunc('minute', ts) AS minute, currency, sum(amount) AS revenue, count(*) AS payments FROM payments WHERE status = 'captured' GROUP BY 1, 2;
It joins the picture
The signal sits alongside everything else Hatch reads, including the agent layer, so who is performing and where capacity sits is visible without anyone reporting on it.
curl https://api.basalt.dev/v1/views/revenue_by_min?limit=5 \ -H "Authorization: Bearer $BASALT_TOKEN"
What you get.
What Hatch reads
Roles, teams, reporting lines and tenure.
Who turns it on
An admin, once. It then runs for everyone without anyone else doing anything.
Who it is for
Everyone in the company, through the same picture of performance and capacity.
What it does not ask for
No forms, no surveys, no migration. SOC 2 Type II, and customer data never trains models.
Find out what you actually have.
Thirty days, one named engineer, and a readout of what your team and your agents actually produced. $2,500, credited in full against your first year.
.png)