How to Rediscover Candidates in Your ATS: A Seven-Step Recruiting Playbook

March 15, 2026

Short answer: To rediscover candidates in your ATS, audit the data first, check what you are allowed to keep and use, clean and deduplicate records, search against the new role must-have requirements, have a recruiter review the evidence, contact only permitted candidates with a specific message, and write every outcome back to the ATS. Run it as a small 30-day pilot and compare the results with your own baseline before you scale it.
Why ATS rediscovery needs a repeatable process
A new requisition opens, and the first move is usually to post the job or start a fresh search on an external platform. The applicant tracking system, which may hold thousands of people who already applied, interviewed, or were shortlisted, gets a quick keyword search at best. Often it gets none.
The reason is rarely laziness. Having candidate records is not the same as being able to find, evaluate, and appropriately contact the right ones. If job titles are inconsistent, the same person exists three times, stages were never closed out, and nobody is sure which records can still be used, searching the database feels slower and riskier than starting over.
Rediscovery fixes that by turning ad hoc searching into a process with seven steps: audit the data, check what you may do with it, clean it, match it to the role, prioritize the groups worth reviewing, contact candidates properly, and measure and record what happened. This guide covers each step, a data dictionary you can adapt, and a 30-day pilot. It focuses on implementation. If you are comparing tools, the candidate rediscovery software guide is the better starting point.
A note on scope. ATS products differ in the fields, reports, search syntax, and integrations they offer. Where this guide describes a data-cleaning or reporting procedure, treat it as a recommended practice and check what your own system supports. Nothing here guarantees a particular hiring outcome, and nothing here is legal advice.
Step 1: Audit your ATS data
Before you search or clean anything, find out what you actually have. An audit shows how much of the database is searchable, which problems will distort your results, and what you need to fix first. It also gives you a baseline, so you can tell later whether the work made a difference.
What to review
- Record counts. Total candidate records, and the subsets that matter for the roles you hire most: by job family, location, last application date, and last stage reached.
- Field completeness and consistency. How many records have a usable job title, skills, location, application date, source, and stage? Do the same values appear in several forms, for example Sr. Developer, Senior Software Dev, or Software Engineer III?
- Duplicates and fragmented histories. The same person applying through different channels, with different email addresses, or being re-entered by a recruiter.
- Contact details. Records with no email or phone, obvious typos, role-based addresses, or details that have never been checked since entry.
- Searchability. What your ATS can actually search: structured fields only, full resume text, saved searches, Boolean operators, or semantic matching. Test it with a handful of known candidates and see whether they come back.
- Access and ownership. Who can view, edit, merge, export, or delete records, and who is accountable for data quality. If the answer is everyone or nobody, that is a finding.
| Check | How to measure it | Why it matters |
|---|---|---|
| Records with a normalized job title | Count of records with a mapped title / total records in scope | Title search fails if titles are free text |
| Records with skills captured | Count with at least one skill / total in scope | Shows how much matching depends on resume text alone |
| Likely duplicate rate | Sample 200 records and check manually; extrapolate cautiously | Duplicates split history and cause double contact |
| Records with a closed-out stage and outcome | Count with final stage and reason / total in scope | Needed to find finalists and respect rejections |
| Records with contact details and a last-checked date | Count with both / total in scope | Separates reachable candidates from dead records |
| Records past your retention review date | Count past policy date / total in scope | Flags records to review or remove before searching |
| Known-candidate test searches | Run 10 searches for people you know are in the system; count hits | A direct test of whether search works |
Record the figures with the date you took them. Do not assume every ATS exposes every report above. If a number cannot be pulled, a manual sample is better than a guess.
Step 2: Review retention, permitted use, and contact restrictions
This step comes before cleaning and searching, because it decides which records are in scope at all. A record sitting in your ATS does not automatically give you permission to use it for a new vacancy or to contact the person again.
Five separate questions
Treat these as different decisions, each with its own answer:
- Retaining. Are you still allowed to hold this record under your retention policy and the privacy notice the candidate saw?
- Searching and using. Can you use it to consider the person for a different or later vacancy?
- Enriching. Can you add or update details from other sources, and are those sources acceptable?
- Contacting. Can you message this person now, on this channel, about this kind of opportunity?
- Sharing. Can the record be seen by other recruiters, clients, or connected systems? In agency work, a candidate who applied through one client role may not be shareable with another.
What the UK regulator says and what is still in draft
The UK Information Commissioner Office publishes employment practices guidance on recruitment and selection. It is aimed at employers and at recruitment agencies, head-hunters, and consultancies. When we checked on 26 October 2026, the ICO still marked it as draft guidance that is under review following changes made by the Data Use and Access Act, with a final version to follow. Check the live page before you rely on it.
The draft chapter on keeping recruitment records makes several points relevant to rediscovery. It does not set a fixed retention period. It says that, unless there is a clear business reason, you should not keep records of unsuccessful candidates beyond the statutory period in which a claim arising from the recruitment could be brought. It also covers keeping candidate information for a new purpose, and gives an example of an organization that tells applicants on the application form that it will keep details of its top-scoring candidates for six months in case further vacancies arise. That is an example from the guidance, not a recommended period for everyone.
The practical takeaway is that a keep everyone indefinitely, just in case approach is hard to defend, and that candidates should be told at the point of application what you intend to do with their details. Whether you rely on legitimate interests, consent, or something else for a talent pool depends on your circumstances and the final guidance, so take advice on that choice.
Jurisdiction matters. The ICO guidance applies to UK data protection law. If you hold records about people in the EU, the United States, or elsewhere, different rules on retention, notice, consent, opt-outs, and electronic or telephone marketing may apply, and some US states have their own privacy laws. Retention periods vary by country and sometimes by record type. This article does not give a universal retention period, and no single suppression setting in an ATS guarantees compliance.
What to put in place
- A written retention schedule that matches your privacy notice, with a review date stored on each record or derived from the last application date.
- A contact restriction status on every record, for example may contact, do not contact, contact on request only, or under review. Apply it before any search results are exported or messaged.
- Rules for confidential records, such as current employees who applied internally, candidates from a client restricted program, or people who asked for their data to be removed.
- A record of the source and notice under which each candidate applied, so you know what they were told.
- Access permissions that limit who can export, merge, or bulk message from historical records.
Step 3: Normalize candidate data and resolve duplicates
Searching a messy database produces messy results. Normalizing means making the same thing look the same everywhere, so a search for one title or skill finds every record that means it. The procedures below are recommended practice. Whether you can run them natively depends on your ATS, and in many systems you will use a combination of bulk edit, import tools, and an integration.
Standardize the fields searches depend on
- Job titles. Keep the original title as entered and add a normalized title or job family alongside it. Never overwrite the original.
- Skills. Build a short controlled vocabulary for your core roles, with aliases, for example Forklift, Reach truck, and MHE operator mapped to one skill group.
- Dates. Use one format and make sure the application date and the last-activity date are different fields.
- Locations. Use a consistent structure such as city, region, country, plus a flag for willingness to relocate or work remotely if you collect it.
- Stages and outcomes. Agree what each stage means and add a reason code for rejection or withdrawal. Rejected with no reason is nearly useless for rediscovery.
Map equivalent titles and skills
Keep a simple mapping table that your team owns and updates. Include the raw term, the normalized term, the job family, and a note about any ambiguity. Associate can mean a junior lawyer, a retail assistant, or a warehouse operative, so map by context, not by word alone.
Find likely duplicates
Match on identifiers that are specific to a person: email address including old addresses, mobile number, and a profile URL where you hold one. Combine weaker signals, such as name plus current employer plus location, only to flag a pair for human review.
Never merge on a name alone. Common names are shared by different people, and a wrong merge can mix two people histories, notes, and contact details. If the match is not clear from a strong identifier, send it to a person to decide.
Handle merges safely
- Auto-merge only on exact matches of strong identifiers. Put everything else in a review queue.
- Keep the full application history, recruiter notes, consent and notice records, and activity log of both records after a merge.
- Preserve the audit trail: who merged, when, which records, and why.
- Find out whether your ATS can reverse a merge. If it cannot, export both records before merging and treat every merge as final.
Step 4: Match old candidates to the new requisition
Matching works best as a sequence, with each stage narrowing the field while keeping the reasoning visible.
- Define the mandatory requirements. Separate what the role truly needs, such as a licence, a certification, a work authorization, a language, or a shift pattern, from what is preferred. Write both down before you search.
- Search normalized titles, skills, and structured fields first. This is the cleanest signal and the easiest to explain.
- Expand with synonyms and Boolean logic. Add alternative titles and skill terms with OR, exclude confusing terms with NOT, and group terms with parentheses.
- Use semantic matching only where your system supports it. Semantic search compares meaning rather than exact words, so it can surface a fulfilment operative for a warehouse associate role.
- Review adjacent experience and transferable skills. Look for people whose work overlaps with the role even if the title differs.
- Inspect the evidence behind each match. Read the actual resume lines, assessment notes, and interview feedback. A score or a keyword hit is not evidence on its own.
- Record the recruiter decision and reason. Shortlist, hold, or reject, with a short reason. This protects consistency and helps the next search.
An illustrative search
The following is an illustrative example for a backend engineering role. Boolean syntax differs between systems, so adapt it to your ATS.
(backend engineer OR back-end developer OR platform engineer OR software engineer)
AND (Go OR Golang OR Python)
AND (PostgreSQL OR MySQL OR SQL)
AND stage_reached:(Technical interview OR Final)
AND NOT (contact_status:Do not contact)
AND last_application_date:[after your retention cut-off]
Notice that the last two lines apply restrictions inside the search itself, and that stage and date filters only work if Step 3 was done properly. If your ATS cannot filter on contact status, filter the results before anyone sees them.
Limits of each method
Keyword and Boolean search finds exactly what you ask for, so it misses people who describe the same work in different words, and it will match someone who merely mentions a term. Semantic matching catches related wording but can rank people highly for reasons that are hard to explain, and it does not know about restrictions or availability unless those are in the data. Neither method proves a person is qualified. Both produce a list for a recruiter to review, not a decision.
Step 5: Prioritize the right historical candidate groups
When a search returns hundreds of records, you need a sensible order for review. Decide the order from the job requirements and the evidence in each record, not from habit.
Groups worth reviewing
- Silver-medal candidates and previous finalists. People who reached late stages and were not selected. Their records often contain real assessment evidence. A reason such as another candidate had stronger domain experience is useful. A reason such as failed a required check may be disqualifying.
- Eligible past applicants. Applicants who were never fully assessed but whose profile fits, provided the retention and contact checks pass.
- Alumni and former employees, where relevant. Check why they left, any agreements or restrictions, and whether re-hiring is permitted. Do not assume they are free to contact.
- Former contractors and temporary workers. Often strong for short-notice or recurring work. Check assignment feedback, end reasons, and any client conditions on who may be re-engaged.
- Candidates from related roles or job families. People who applied for adjacent jobs, with skills that transfer.
How to order them
A workable approach is to rank within each group on these factors, in roughly this order of weight, then adjust for your hiring context:
- Match against the mandatory requirements.
- Strength and relevance of previous assessment evidence.
- Recency of the last application or contact. Older does not automatically mean unsuitable. It means the details need more checking.
- Any stated candidate preferences, such as location, hours, or pay range.
- Current restrictions, including contact status and retention review.
- Data quality: records you can verify and contact reliably go first.
Do not assume eligibility. Not every former employee, rejected applicant, or contractor can be contacted. Some left on terms that restrict re-engagement, some asked not to be contacted, and some were rejected for reasons that should keep them out of a new search.
Illustrative scenarios by role type
These are hypothetical examples of how the prioritization might work. They are not customer results.
| Context | Search priorities | Watch for |
|---|---|---|
| Warehouse and logistics | Shift availability, site or commuting distance, equipment certifications, for example forklift, and previous attendance or assignment feedback | Certifications that have expired, outdated addresses, and records that never captured shift preference |
| Software engineering | Technical interview outcomes, stack overlap, seniority fit, and final-round feedback from a previous search | Skills that change quickly, so confirm current experience, and rejections tied to level rather than ability |
| Staffing and contract | Previous assignments, end dates, availability, pay expectations, and client restrictions on re-use | Records tied to one client, rehire eligibility rules, and who owns the relationship |
| High-volume hiring | Strict mandatory criteria, completed screening steps, and fast contact verification | Duplicates, double messaging, and large batches contacted before restrictions are applied |
Step 6: Verify permitted contact information and re-engage candidates
Once you have a reviewed shortlist, check that you can contact each person and that the details you hold are reliable. Then write a message that fits what you actually know.
Treat contact data as something you verify, not assume
- Source provenance. Record where each email or phone number came from: the candidate application, a recruiter conversation, or an enrichment source.
- Field-level last-checked timestamps. A single last updated date on a record hides which fields are old. Keep a date per contact field.
- Verification status and confidence. Use plain states such as verified by candidate, verified by a tool, unverified, bounced, or invalid.
- Do not overwrite trusted ATS fields with unverified data. Put enrichment results in separate fields until a person or a rule promotes them.
- Stay within permitted sources. Do not scrape restricted sources or work around a platform access controls. Use sources whose terms allow the use, and respect each platform rules about contacting its members.
- Apply restrictions at the last step. Check the contact status again immediately before sending. Depending on the channel and country, electronic messaging and telephone contact rules may apply on top of data protection law, and the ICO publishes direct marketing guidance for the UK.
Writing the message
Refer to the earlier contact in terms the record supports. If the record says someone applied for a role in a given month, say that. Do not invent recollections of a conversation that the record does not show. Say why you are getting in touch, ask one clear question, and make it easy to decline or opt out.
Sample message, adapt to your record and channel:
Hi First name, you applied to Company for the previous role position in month and year. We are now hiring for a new role in location, and your experience with specific skill from the record looks relevant. Would you be open to a short call this week to hear about it? If you would rather we did not contact you about future roles, just reply and we will update our records.
Follow-up and suppression
- Set a maximum number of attempts per candidate per requisition and per quarter, and stick to it.
- Stop on any reply, whether positive, negative, or an opt-out, and log it straight away.
- Suppress future outreach whenever a candidate asks, a message bounces repeatedly, or a restriction applies. Make sure the suppression is stored where every user and connected tool can see it.
- Do not send the same generic template to a whole segment. Vary the message by role and by what the record shows.
Step 7: Measure results and write activity back to the ATS
Without definitions, rediscovery numbers are easy to misread. For each metric, fix the numerator, the denominator, and the reporting period before the pilot starts. A sensible default period is by requisition and by calendar month, with outcomes counted inside a fixed window, for example, replies within 14 days of the first message, that you choose in advance.
| Metric | Numerator | Denominator |
|---|---|---|
| Search-to-shortlist rate | Searches that produced at least one candidate a recruiter shortlisted | Rediscovery searches run in the period |
| Contact coverage | Shortlisted candidates with at least one permitted contact method | Shortlisted candidates |
| Verified-contact rate | Shortlisted candidates with a verified contact method | Shortlisted candidates |
| Delivery rate | Messages delivered | Messages sent |
| Bounce rate | Messages that failed delivery, hard and soft counted separately | Messages sent |
| Contact response rate | Delivered messages that received any reply within the window | Messages delivered |
| Positive response rate | Replies showing interest in talking | Messages delivered |
| Rediscovery-to-interview rate | Rediscovered candidates who attended an interview | Rediscovered candidates contacted |
| Rediscovery-to-hire rate | Rediscovered candidates hired | Rediscovered candidates contacted, or shortlisted, state which |
| Cost per qualified conversation or hire | Attributable cost: recruiter time at an agreed rate, tool costs, other direct costs | Qualified conversations, or hires |
Three cautions apply. First, separate failed deliveries from silence. A bounced message is a data problem, and a delivered message with no reply is an engagement problem, so they need different fixes. Second, report cost only when you have the cost data, and say which assumptions you used. Time saved is not the same as money saved unless the time was used on something that earns or avoids cost. Third, compare against the baseline from Step 1 and against other sourcing channels over the same period, rather than against a number from another company.
ATS write-back
Rediscovery only improves over time if the ATS records what happened. Otherwise the next recruiter repeats the same search and contacts the same people. Your ATS should remain the system of record, and any connected tool should write to it rather than keep a competing copy. Our guide to building a recruiting stack without replacing your ATS covers that principle in more depth.
- What to record: the search run, the requisition it was for, who reviewed it, the recruiter decision and reason, each outreach attempt with channel and date, replies, opt-outs, interview and hiring outcomes, and any change to contact fields.
- Identifiers: use a stable candidate ID and requisition ID in every record and every system, so activity lands on the right person and role.
- Sync failures: decide who is alerted, what is retried, and how long a failed write is allowed to sit before someone investigates.
- Conflicts: set a rule for what happens when two systems change the same field. A common rule is that the ATS wins for stage and contact status, and the outreach tool wins for message events.
- Audit logs: keep a log of who or what changed which field and when, so you can explain and correct mistakes.
- Ownership: name one owner for the data model and one for day-to-day sync health.
Which fields can be written, and whether sync is real-time or scheduled, differs by ATS and integration. Ask any vendor for the exact list of supported read and write fields and the sync method before you rely on it.
Implementation diagram
The diagram below shows the recommended order of work. It is a recommended workflow for any team using any ATS. It is not a statement that Ninjahire, or any single tool, automates every stage.
- ATS data audit Count records, test field quality, and set your baseline.
- Retention and contact checks Decide which records can be kept, used, and contacted legally.
- Normalization and deduplication Standardize fields and resolve duplicate profiles safely.
- Role matching Search against mandatory requirements first, then expand with synonyms.
- Recruiter review Examine match evidence and record a definite decision and reason.
- Permitted re-engagement Verify contact details, send tailored messages, and respect opt-outs.
- Measurement and ATS write-back Log outcomes, report metrics, and feed learnings back into the next cycle.
Practical data dictionary
These are proposed fields. They are a starting point to adapt, not a list of fields that exist in every ATS, and not a claim that each one is currently available in Ninjahire. Many teams can approximate them with custom fields, tags, or notes.
| Field | What it means | Why it matters |
|---|---|---|
| Candidate ID | Stable unique identifier for the person across systems | Prevents duplicates and enables accurate write-back |
| Original source | Where the candidate first entered the system | Shows what notice applied and how to attribute results |
| Last application date | Date of the most recent application | Drives retention review and recency ranking |
| Previous stage and outcome | Furthest stage reached and the result, with a reason code | Identifies finalists and rules out poor fits |
| Normalized job titles and skills | Standard titles and skills mapped from raw text | Makes search consistent |
| Last contact date | Date of the most recent outreach or conversation | Prevents over-contacting |
| Retention review date | Date the record must be reviewed or deleted under policy | Keeps searches inside permitted records |
| Contact restriction status | May contact, do not contact, on request only, or under review | Applies opt-outs and restrictions before outreach |
| Enrichment source and timestamp | Where added data came from and when it was checked | Shows how reliable a detail is |
| Recruiter decision | Shortlist, hold, or reject, with a short reason | Keeps review consistent and auditable |
| Outreach outcome | Delivered, bounced, replied, positive, declined, or opted out | Separates delivery problems from engagement |
| ATS write-back status | Whether each activity was successfully recorded in the ATS | Surfaces sync failures before data drifts |
30-day pilot checklist
A pilot lets you test the process on one role family or one location before you commit more time. Before you begin, write down your acceptance criteria and compare results against your own baseline. This article does not offer universal success thresholds, because they depend on your market, roles, and data.
| Phase | Tasks | Deliverables | Owner |
|---|---|---|---|
| Days 1-5 Baseline & governance |
|
Baseline figures, scope statement, approved rules, acceptance criteria | Recruiting operations lead, with data protection contact |
| Days 6-10 Data cleanup & mapping |
|
Mapping table, cleaned subset, duplicate review log | ATS administrator |
| Days 11-15 Search & review |
|
Shortlists with decisions, search log, list of data gaps | Recruiters |
| Days 16-23 Permitted outreach |
|
Outreach log, updated suppression list, conversations booked | Recruiters, with ATS administrator for suppression |
| Days 24-30 Reconciliation & decision |
|
Results report against baseline, reconciliation list, go or no-go decision | Recruiting operations lead, with hiring managers |
Common failure modes
| Failure mode | Warning sign | Corrective action |
|---|---|---|
| Searching an unclean database | Known candidates do not appear, or results are full of irrelevant records | Run the audit and normalization steps first; retest with known candidates |
| Treating keyword matches as proof of qualification | Shortlists contain people who mention a skill but never used it | Require recruiter review of evidence against mandatory requirements |
| Merging candidates incorrectly | Histories or notes belong to two different people | Merge only on strong identifiers; keep audit trails; export before merging |
| Contacting candidates despite restrictions | Opt-out requests or complaints after outreach | Apply restriction filters before export and again before sending; store suppression centrally |
| Treating unverified contact data as accurate | High bounce rates, wrong-person replies | Track source, check dates, and verification status per field |
| Repeating generic outreach | Low replies and complaints about irrelevant messages | Tie each message to a role and to something in the candidate record |
| Failing to write outcomes back to the ATS | Recruiters re-contact people already declined; reports do not match activity | Define required write-back fields and reconcile weekly |
| Measuring replies without a denominator | A response rate that changes depending on who calculates it | Document numerator, denominator, and window for every metric |
| Claiming ROI from time saved without measuring financial impact | Savings stated in hours with no link to cost or revenue | Report measured costs, and state assumptions about how freed time was used |
Frequently asked questions
How do I search old ATS candidates?
How can I resurface previous applicants?
How often should ATS candidate data be reviewed?
How do I prevent duplicate candidate records?
Can I re-contact a candidate who applied years ago?
How should candidate rediscovery results be measured?
Do I need separate software to rediscover candidates?
Start small, then expand
Rediscovery works when it is a routine with rules, not an occasional rescue. Audit the data, decide what you may use, clean it, match against the role, review the evidence, contact only the people you can, and record what happens. Each step makes the next search easier and safer.
Pick one role family, write your acceptance criteria, take your baseline, and run the 30-day pilot. If the results beat your baseline, expand to the next role family. If they do not, the audit and failure-mode table will usually show where to look.
Automate Candidate Rediscovery Inside Your ATS
Learn how NinjaHire surfaces qualified past applicants, enriches permitted contact details, and logs candidate outcomes directly back to your Applicant Tracking System.
Book a 30-Minute Architecture Demo →Sources and further reading
- ICO, Employment practices and data protection: recruitment and selection, draft guidance under review, checked 26 October 2026
- ICO, Keeping recruitment records, draft guidance
- ICO, Direct marketing and privacy and electronic communications
.png)

