ATS

Analytics

Filter the open book
Since
Counting open orders…Exact for pipeline, vertical, division and the two manager axes. Campus and order type narrow by the pipelines those orders run on, so the charts can include a pipeline’s other campuses. Days in stage ignores the filter entirely. The date range narrows only what already happened — offer acceptance, both cycle-time widgets, the readiness gap, the funnel, the channel table, hires by vertical and the two demand charts. It deliberately does not move the open-order tiles, the finalist, in-play and starting-soon counts, the campus chart or any action queue: a seat open since last year is still open. Four of the widgets it does narrow carry a data boundary of their own and say on their face when a wider range was clamped to it.
Loading live data… 0 of 24 reads

Are we on track?

Executive summary

Open orders

Status is Active · one order is one hire

Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

A bare count of open orders reads as that many seats with nobody on them, and only about a quarter of them are — hence the split. Paused orders and near hires are NOT open and are shown beside the count rather than folded into it: a paused order is coming back, and a near hire already has a named person on it.

Finalists

Interview or later, on pipelines with an open order

Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

Split because the two halves need different things: the pre-offer group needs interviews run, the at-offer group needs paperwork closed. Review is excluded deliberately — most funnel washout still happens there, so counting it would overstate how close the book is to filling. Counted as distinct people: one person can be a finalist for several seats, so this is not the number of seats that can be filled.

Candidates in play

Active in the last 90 days, on pipelines with an open order

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

Only candidates active in the last 90 days — Salesforce doesn't expire idle applications yet. The second number is the one anybody acts on.

Starting in 30 days

Accepted, with a start date booked

Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

A logistics number, not a health metric. Onboarding detail sits in the action queues below.

Orders filled vs raised

Since 2026-07-01 · there is no headcount plan, so demand is the denominator

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

Below 1.0 the book is growing. The current month is still accruing hires and always reads short.

Offer acceptance

Hires ÷ (hires + candidate withdrawals)

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

Our own rejections are out of the denominator: when an offer goes out we intend to hire, so a withdrawal after offer is the candidate's decision and a rejection is ours. Counts offers MADE since 2026-07-01 — an offer's fate can land long after it went out, so the tile follows the offer rather than the outcome.

Time to a passing interview

Median days from ready to a candidate passing · the measure Crossover owns

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

This is the cleanest attribution boundary for a duration, not the edge of the remit — the work continues through offer, placement and start. Time to offer and time to hire sit beside it because both end on the customer's side of the line. Counts interviews PASSED since 2026-07-01, not orders raised then: cutting on the order's own clock would drop the long cycles this measure exists to show.

Then to offer, and to hire

Downstream of the passing interview · customer-owned latency

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

Both clocks start at Date Ready, not at requisition approval, so neither is comparable to an industry time-to-fill — the benchmark is a footnote here, never a line on a chart. The negative durations are kept: an offer that predates its order's own clock is a retroactive R2 on a seat already being worked, and dropping those moved the median by three days in an earlier pass. Counts offers MADE since 2026-07-01, so an order ready long ago whose offer landed inside the range is in.

Readiness gap

Days an order waits for its requirements before it can be sourced

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

The same-day orders are excluded from the median on purpose: Date Ready defaults to the creation date, so most zeros are the default firing rather than a turnaround anyone achieved. Counts orders that became READY since 2026-07-01; one still waiting for its requirements is not yet measurable and is in neither number.

Demand and supply

Orders arrive continuously; there is no annual plan

The order book over time

Everything ever opened, split by how it left the book and what is still on it

Blended — part warehouse mirror, part live Salesforce, both read at 12:56 AM. One of its series comes from a store the other could not answer; this widget's note says which.
Loading…
Why this number

The top edge is every order ever opened; the top band's thickness is the book still open at that moment. It starts from the 0 orders already open when the window began, not from zero — a hiring book does not start empty. An order leaves the book two ways and the two lower bands say which: its hire lands, or it is cancelled. Nothing is in both. An order that is merely PAUSED has not left — one on hold or awaiting budget stays in the open band, because it is coming back, and the open-order tile above counts those separately. TWO STORES: the raised and filled counts are the warehouse mirror, which currently holds a slightly larger open book than the live wire — the difference is mirror lag, not a different definition. The cancelled band is read LIVE, because no cancellation date exists in the mirror or on the order itself; its dates come from Salesforce field history, which records when the reason itself changed rather than when the order was last touched — the last-modified stamp it replaced drifts on any later edit of any field. THAT IS BETTER, NOT CLEAN. Field history dates the SYSTEM EVENT, and a bulk status change is a system event: it writes one history row per order inside the same few seconds, so a batch update still lands a pile of cancellations on one day. Field history on hiring orders also begins on 2026-04-28, so any month before that draws an empty cancelled band however many orders were really cancelled in it. Read the band as the month a cancellation was RECORDED, not the month it was decided.

Orders raised against orders resolved

By month · an order is filled when its hire lands, not when the offer goes out

Blended — part warehouse mirror, part live Salesforce, both read at 12:56 AM. One of its series comes from a store the other could not answer; this widget's note says which.
Loading…

Pipeline health

Where the funnel loses people, and how the book is ageing

Hiring funnel

Applications created since 2026-07-01, by the furthest stage they reached

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

Reconciles: 0 on the ladder plus 0 off it equals 0 applications. Stage is taken from the furthest stage reached, not from where an application stands — a rejected application reads Rejected, which says nothing about where it died. Covers every pipeline, not only those with an open order, so it is a wider population than the tiles above. Not every pipeline runs every stage, so a rung can read high simply because few pipelines enable it.

Open orders against their own SLA

Days remaining against each order's own goal

Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

Goals run from 42 to 140 days, so raw age cannot be banded: 60 days is healthy against one goal and blown against another. Within SLA is the working state, not a warning.

Late-stage candidates by campus

Distinct people matched to an open order, by stage

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

Early stages are excluded on purpose: including them turns every bar into a proxy for ad spend rather than for pipeline health.

Hires by vertical

Hires since 2026-07-01, by the pipeline's vertical

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…

Velocity

Where the time actually goes

Days in stage

Median days from stage entry to result · bottleneck finder

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

Measured from STAGE ENTRY, not from when the step was picked up: every step of a stage is created when the candidate enters it, so for a stage running several steps this is an upper bound.

Time to offer and time to hire

Monthly median, in days

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

Direction matters more than level here, because both clocks start at Date Ready and neither is comparable to an industry benchmark.

Channel ROI

Judge a source on hires and yield, never on applicant volume

Applications and hires by source

Applications created since 2026-07-01 · lower applications-per-hire is better

Warehouse — mirrored from Salesforce and typically behind, read at 12:56 AM. Used where the volume makes a live read impossible.
Loading…
Why this number

Candidates whose account first arrived from LinkedIn or Indeed are carved out of Unknown and Search Engine only, never out of a named paid channel. Retargeting is deliberately left whole: it is judged on whether re-engaging the pool worked, and folding it into its own feedstock would erase that.

Action queues

What makes someone open this page daily

Stalled

Ranked against each stage's own tempo

—Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…

Offers awaiting reply

Sent, no answer yet

—Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

Amber past 7 days, red past 14 — a policy target, deliberately not fitted to what we do today. The median open offer here is far older than that, and that is the thing to fix rather than a tempo to normalise. Rows marked at risk hold a FAILED offer step: that verdict is recorded rather than inferred and it fires before the stage moves, and recovery from here is rare. 0 applications carry one.

Outstanding feedback

Interviews submitted, not yet graded

—Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

Scoped to the last 30 days of submissions, and narrowed to the pipelines your filter selects.

Hired, not started

Accepted, with a start date ahead

—Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

Open onboarding tasks are deliberately not counted here. There is no usable task vocabulary to count them by — the work-unit type is null on every task created this year, and the open-task pool is dominated by bulk rows owned by deactivated recruiters.

Exceptions

Long-open orders, split by who can actually fix them

Starved — past SLA with nobody close

Crossover's to fix: these seats need sourcing

Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

This is the small table on purpose. The large majority of long-open orders already have a passing candidate; pooling them sends the wrong people to fix the wrong problem.

Past SLA, but somebody is close

The wait here is paperwork and decisions, not sourcing

Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

Matched, never filled: supply is inferred from the pipeline, and a matched finalist is not an accepted offer.

Near hires — the last mile

A named person is already on the seat

Live — read from Salesforce at 12:56 AM. This is what the system says right now.
Loading…
Why this number

These orders are NOT open — they leave the open count at offer, which is why the headline above does not include them. A third group exists that this table cannot show: seats where a matched candidate has passed interview but no application is linked yet. That link is inferred rather than recorded, and no store here carries it.