An ATS that treats candidates like people — and shows you why it ranked them.
Post a role, screen with real questions, see an explainable match score on every applicant, book interviews with the link already made, and answer every application without writing each reply. Consent is on a hash-chained ledger; every action, on an append-only log.
Free to post and review. Pro from $99 a month when you want the AI to do the boring parts.
Each stage change e-mails the candidate once, and opt-in auto-rejection closes out the ones left quiet. Silence stops being an outcome.
One 0–100 match score — skills, experience, location — with the reason beside it. Deterministic; no model, no hidden attributes.
Each consent granted one by one, stored with the exact words the candidate saw, hash-chained, and re-checked when you export.
From posting to proof, without leaving one console.
Six screens, drawn from the real thing. Each step links to the guide that documents it.
Post a role in minutes, with a salary range candidates can see.
Title, location, employment type and description are all it takes. The posting goes live on submit — at its own public link with the apply form, on your hosted careers page, and in the job feed aggregators ingest.
- Drafts stay private until you publish
- A hosted careers page at /companies/your-name
- Closing a job takes it down everywhere at once
Transparent fit scoring. Literally — try it.
Toggle the candidate’s skills, slide their years, move them around the map. The number you see is produced by the console’s own scoring code, running in your browser.
React, TypeScript, Node.js, GraphQL, Jest, Playwright and accessibility, with 5 years of experience shipping frontend products. Figma is a plus.
mid skills (45) · strong experience (100) · strong location (85)
- Skills · 60%45
- Experience · 25%100
- Location · 15%85
This is the console’s own scoring code running in your browser on a made-up role — the same inputs always give the same number. Unknowns count as neutral, never zero. How it is calculated
The whole team, in the loop, on purpose.
- Roles that match how you workOwner, Admin, Recruiter, Hiring Manager, Viewer — each with a plain-language scope. Only Owners and Admins invite people, change roles or edit the brand.Read the guide →
- Interviews with the link already madeA calendar with an agenda; book an applicant and a Google Meet or Zoom link is created on the spot — or use a pasted room that works today.Read the guide →
- Documents signed where people already areUpload, choose signers — teammates or applicants — and send. Signed and completed events land in your notifications.Read the guide →
Twelve things you stop juggling.
The candidates you want have options. Give them a reason.
A process that respects people’s time and data is not a cost of doing business here. It is the product — and it is what makes your postings worth answering.
- AnsweredA status e-mail on every move, and a humane close-out for applications left quiet — so nobody is left guessing.
- VisibleEverything held about them is one e-mail away at /apply/me: a full copy to download and a switch for every optional consent.
- TheirsOptional consents can be withdrawn at any time, and a deletion request is completed within 30 days — with a receipt that proves it.
- RealEvery employer is reviewed before it can post, applying is always free, and nothing optional is switched on for them.
63 guides. Every one of them opens.
Short, specific, and written from the console itself — each names the page it describes. Filter by what you are doing, or type a word.
63 guides
Getting started
- Your first week: a setup checklistPost a job, add screening questions, set up your brand, invite the team, connect a meeting link, decide on auto-rejection, and review your first applicant.
- A tour of the employer consoleWhat each section of /admin does for an employer, in the order the sidebar shows them.
- How do I create an employer account?Visit /signup, choose Employer, and create an account with your work email.
- How do I post a job?From /admin/jobs/new: title, employer, location, employment type and description — plus a salary range if you can.
Posting jobs
- Screening questions and auto-disqualifyEach job carries its own screening questions — a set suggested for the job's country, plus yours. Any question can be required, and any can auto-disqualify a wrong answer.
- Your hosted careers pageEvery organization gets a careers page at /companies/<your-slug>, designed in the Org & Brand Console with a live preview.
- Where your job appearsAt its own public link with the apply form, on your hosted careers page, and in the job feed aggregators ingest.
- Automatic "we received your application" repliesOff by default. Switch it on in the Org & Brand Console; it is sent once per application, never twice.
Managing applications
- How do I review applications?From a job's Applicants tab, or every job at once at /admin/applicants: names and e-mails in the clear, a match score on every row, five ways to sort.
- How fit scoring worksOne 0–100 match score, deterministic and explained: skills 60%, experience 25%, location 15%. No model calls, no hidden attributes.
- Pipeline stages and the kanbanNew → Reviewing → Interviewing → Offer → Hired, plus Rejected, Withdrawn and Disqualified. Drag a card to move it; the matching e-mail goes with it.
- Messaging a candidate from the consoleOpen the composer from a pipeline card, start from a template — intro, scheduling, assessment, follow-up, offer, close — edit, and send.
Email & automation
- Email automation: what sends itselfStatus e-mails on every stage change, an optional auto-reply, opt-in auto-rejection of applications left quiet, and campaigns to your own pipeline — each logged.
- Which status changes e-mail the candidateReviewing, Interviewing, Offer, Hired and Rejected each send a message. Withdrawn and Disqualified do not.
- Auto-rejection for applications left quietOff for every new job. Switch it on and applications left in New or Reviewing past your window — 14 days unless you change it — get a humane close-out, once.
- Email campaigns to your pipelineCreate a campaign, pick a template and an audience from the people who applied to your jobs, send, and watch delivered, opened, clicked and bounced.
Interviews & scheduling
- Interview schedulingBook interviews from the calendar, with a Google Meet, Zoom or pasted room link created on the spot. With Google, the candidate gets the calendar invitation too.
- Google Meet, Zoom, or your own room linkThree independent options at /admin/calendar/settings. A pasted link works today; Google and Zoom need one sign-in each.
- Assessments: templates, generated tests and candidate self-assessmentsClone a role template or generate a test, publish it, invite candidates by e-mail. Short-answer and multiple-choice questions grade themselves; essays need a reader.
- Sending documents for signatureUpload a document, choose the signers — teammates or applicants — and send. Track it under To-do, Awaiting me, Completed and Drafts.
Team & organization
- Teams and the org chartTeams and departments group members in the directory and shape the org chart. Nesting is optional.
- The Org & Brand ConsoleLogos, colours, fonts, the story you tell candidates, your careers page, how job posts look, and the candidate auto-reply — with a live preview.
- Organization activityEvery membership, role, team, invitation and brand change, newest first, at /admin/organization/activity. Owners and Admins can read it.
Compliance & privacy
- Candidate consents, and what each one lets you doTwo consents are required to apply; every other one is optional, off until the candidate turns it on, and can be withdrawn at any time. Exports re-check them row by row.
- The consent ledgerAppend-only and hash-chained: every grant and withdrawal is a row that cannot be edited, and the chain is checked for breaks.
- Are we GDPR compliant by using Offerrole?Offerrole provides the tooling, but the controller obligations remain with you. Sign the DPA at /legal/dpa.
- Access and deletion requests from candidatesCandidates help themselves at /apply/me — a full copy and their consent switches — and deletion requests are completed within 30 days.
Analytics
- The numbers you can seeOpen jobs and applications on the dashboard, stage counts on every pipeline, match scores on every row, cohorts and market gaps, and campaign performance.
- What does analytics show an employer?Your jobs, applications and pipeline stages, match scores, aggregate cohorts and campaign performance. Site-wide traffic analytics are the platform's own.
- Campaign performanceDelivered, opened, clicked, bounced and complained, for each campaign and over time, at /admin/campaigns/performance.
- What the platform watches on your behalfLedger integrity, consent rates, profile completeness and freshness, pending deletion requests and stuck jobs — checked by the platform team.
Integrations
- How do integrations work?Direct connectors for major HRIS, ATS and payroll systems, aggregator coverage through Merge and Finch, calendar and video connectors, and CSV as the universal fallback.
- The Integration Studio and the Partner APIIssue and revoke API keys, dry-run ATS payloads through the mapper, and watch live ingest at /admin/integrations/studio. Public reference at /developers.
- Calendar, video and messaging connectorsGoogle and Microsoft calendars, Zoom, Google Meet, Microsoft Teams and Slack, alongside the HRIS, ATS and payroll connectors.
- CSV upload + exportDrop a CSV at /admin/integrations/csv. Headers auto-detected. Works for any HRIS we don't have a direct integration with.
Billing & account
- Free, Pro and Scale: what changesFree: unlimited postings, 3 seats, manual workflow. Pro $99/month: 200 AI actions, 10 seats. Scale $399/month: 1,000 AI actions, unlimited seats, custom branding, API access.
- College+ for employersHiring only early-career roles? Apply for College+ status from your account settings and your workspace stays on the Free plan with no time limit.
- Account settings, passwords and closing your accountProfile and plan at /admin/account, a new password at /admin/account/password, closure at /admin/account/close.
- Signed out in the middle of something?A sign-in lasts up to 24 hours and is renewed while you work. When it ends, a bar lets you sign in again in a new tab without losing the page.
Troubleshooting
- I can't sign inUse the employer sign-in at /admin/login, try the e-mailed sign-in link if it is offered, and check that your invitation has not expired.
- Candidates can't find my jobDrafts aren't published, closed jobs come down everywhere, a new employer can't post until verification is done — and there is no public job board to browse.
- A candidate says they never got our e-mailStatus e-mails go once per stage; campaigns skip unsubscribed and bounced addresses; and spam folders exist.
- My export has fewer rows than the listExports re-check every row against the candidate's consent at that moment, and cohort exports are counts, not people.
Branding
Transparency & policies
- What does applicant-paid visibility actually change?Ordering and labeling only — never match scores, qualifications, or your hiring requirements.
- How does Offerrole handle data my ATS pushes via the API?API ingest is treated like an attested CSV import: batch-tracked, provenance-audited, never overwrites candidate-provided data.
The pages behind the page.
Post, receive, rank, review — every step on the consent ledger.
Fair, explainable, opt-in evaluations for every stage.
Consented pipelines your sourcers can search without cold outreach.
Sourcing, screening, coordinator and analytics agents inside the ledger.
HRIS, ATS, payroll, calendar, video and messaging connectors.
The Partner API reference, with samples and rate limits.
Certifications, controls and subprocessors, kept current.
The DPA you sign as controller; we are the processor.
Controls and terminology for regulated, high-volume hiring.
Enterprise, staffing and agency programs.
Guides and playbooks on consent-first recruiting.
How we think about hiring, consent and the people in between.
Free to post and review. Paid when the AI is doing the boring parts.
Post jobs, review applications, and use the manual workflow. AI features off.
- Unlimited job postings
- Up to 3 team seats
- Manual cohort filters
- Audit log + consent ledger
- Standard email support
Everything in Free plus AI for the boring parts — JD writing, cohort matching, assessment generation.
- 200 AI actions / month
- AI job description writer
- AI cohort matching
- AI assessment generation
- Up to 10 team seats
- Priority email support
Higher AI allowances, bigger team, custom branding, and a dedicated point of contact.
- 1,000 AI actions / month
- Unlimited team seats
- Custom branding + careers page
- API access (beta)
- Dedicated account manager
- SAML SSO (on request)
Candidates never pay to apply. Verified non-profits and educational institutions get 50% off Pro and Scale. Full pricing details · What changes between plans
What hiring teams ask us first.
Is it really free to post a job?
Yes. The Free plan has unlimited postings, up to three seats, the manual workflow, the audit log and the consent ledger. Pro and Scale add AI actions, seats, branding and the API. Candidates never pay to apply.
What does "consent-first" change for me, practically?
Candidates grant each consent one by one when they apply — two are required, the rest are optional and off until they switch them on. You see your own applicants in full, because they applied to you; people in the wider network stay masked; and exports re-check every row against the candidate's consent at that moment. You get a defensible record without extra work.
Who answers the candidates we do not hire?
The platform does, once per stage: a status e-mail whenever you move an application, and — when you switch it on for a job — a humane auto-rejection for applications left in New or Reviewing past your window (14 days unless you change it). Withdrawn and disqualified applications send nothing automatically, so you choose the reply.
How is the match score calculated, and can it be biased?
Skills overlap (60%), years against the role's seniority (25%) and location (15%), with unknowns counted as neutral. It is deterministic — no model is consulted — and protected characteristics do not exist in the schema, so they cannot enter it. The breakdown is shown on every row.
Can we bring the candidates we already have?
Yes, from the Talent pool page: tick the consent attestation, then import resume files or a CSV — exports from common ATSs are recognised automatically. Rows are matched on e-mail, so nobody is created twice, and every batch is recorded with the attestation you gave.
Does it work with our HRIS, calendar and video tools?
Direct connectors for Workday, SAP SuccessFactors, Oracle HCM, BambooHR, Greenhouse, Gusto and ADP, plus Google and Microsoft calendars, Zoom, Google Meet, Microsoft Teams and Slack; dozens more systems through the Merge and Finch aggregators; CSV always. Provider API keys never sit in our database, and your own sign-ins are stored encrypted.
More in the help centre, or write to hello@offerrole.com.