“Processed 500 resumes” is meaningless.
What matters is how many resumes the recruiter had to read by hand. A pipeline that processes 500 resumes but still requires reading 500 of them hasn’t solved anything.
At 500 resumes per role, the bottleneck is human review, not parsing. ShortlistTable runs AI screening at batch scale with per-column confidence thresholds — auto-categorise the obvious cases, surface only the ambiguous ones to a focused review queue. Read the 80 that matter, not all 500. Zero auto-rejections, full audit trail.
High-volume hiring tooling usually optimises for the wrong axis. Parsing is already fast; the actual cost is the recruiter’s attention. If a recruiter has to look at every one of 500 inbound resumes individually, you have a throughput problem the database speed cannot fix.
We close the loop by doing the per-criterion screening pass once per resume, then surfacing only the candidates with ambiguous verdicts. The recruiter reviews 80 — not 500. The remaining 420 sit in a hold queue with their evidence intact, ready for the next round or for compliance review.
What matters is how many resumes the recruiter had to read by hand. A pipeline that processes 500 resumes but still requires reading 500 of them hasn’t solved anything.
At high volume, auto-rejection thresholds become a major bias amplifier — small model errors get applied to thousands of candidates silently. We never auto-reject.
When a regulator asks why 300 candidates were screened out, you need a per-candidate paper trail. The trail has to be cheap to query, not buried in a notes field.
Each screening column has its own confidence threshold. Auto-categorise the obvious cases, surface only the ambiguous ones to the review queue.
The queue is ordered by ambiguity, not by score. Reviewers spend their time on the candidates the engine wasn’t sure about — not the obvious yeses or noes.
Low-fit candidates land in a hold queue, not the bin. Evidence stays intact, the queue is searchable, and re-runs against new criteria are supported.
500 resumes finish in minutes, not overnight. Per-row processing runs in parallel with backpressure so the worker doesn’t fall over.
Same candidate applying through two channels gets merged with a configurable matching rule. The merge is logged, never silent.
Every verdict — original, override, re-run — is logged with timestamp, actor, and reason. Queryable in bulk for compliance review.
| Property | ATS bulk import | Generic AI ranker | Spreadsheet at scale | ShortlistTable |
|---|---|---|---|---|
| Resumes per batch | ✓Thousands | ✓Thousands | ✕Drifts ≥ 80 | ✓Thousands |
| Per-column confidence threshold | ✕No | –Single global | ✕No | ✓Per column |
| No auto-reject | ✕Common | ✕Common | ✓Manual | ✓Hold queue only |
| Per-candidate audit trail | –ATS-shaped | ✕Limited | ✕None | ✓Timestamped per-cell |
| Duplicate detection | –Limited | ✕Rare | ✕Manual | ✓Configurable merge rule |
Yes. The pipeline is built around batching — 5,000 resumes in a single table is supported. The constraint at that scale is usually the speed of the recruiter reviewing the surfaced 100–200, not the engine.
Yes — duplicate resumes (same candidate applying via different channels) are merged with a configurable matching rule. The merge is shown in the audit trail, never silent.
Only by your retention policy. You can keep it open for the role’s lifetime, or set a 90-day auto-archive. We never delete candidate data on our own schedule.
Only the affected cells re-run, not the whole table. Previous cells stay valid and the audit trail records the column edit.
Per workspace default (0.75 by default), with per-column overrides. Most volume customers tune them up over time as they learn which columns the engine is reliably confident on.
Yes — every export preset has a filter for any column. Export shortlist only, review-queue only, or hold queue only.
Try ShortlistTable on a 25-resume pile to see the queue + threshold workflow. Free, no credit card.