An account manager role opens in Tours. The recruiter filters her ATS on Indre-et-Loire, the French département around Tours, and finds a handful of profiles. Two weeks later, looking for something else, she comes across an ideal candidate, met in the spring, available, from the right sector. He had been in the database all along. His profile said « 37 », the département's number.
This kind of gap goes unnoticed day to day. Each recruiter enters data their own way, each profile looks correct, and candidates disappear at search time. In one team we met, a département coded two different ways was enough to make part of the database impossible to find.
A filter compares values. It does not know that « 37 » and « Indre-et-Loire » are the same place, or that « available in 3 months » written in March means June. Everything that will later be filtered, sorted or counted depends on how it is written today.
Natural language search catches some of these gaps, because it understands what a text means. It does not catch everything. Dashboards, exports and ATS filters keep working on exact values. Consistent data entry remains the foundation.
Location, contract type, seniority, mobility: any field that will be used as a filter should offer a list of values, not free text. If your ATS allows it, switch these fields to dropdowns in the custom field settings.
A simple test: if two recruiters can write the same thing two different ways, the field should become a list.
« Available soon », « 3 months' notice », « free after the summer »: these phrases are right the day they are written and wrong three months later. An availability date stays readable a year from now, and it lets you sort the candidates you can reach at the right time.
Same rule for the last contact: a date, not « seen recently ».
Pay often mixes current salary, expectations, base, variable and benefits in a single sentence. At least separate base and variable, in a single unit (€k gross per year, for example), and keep expectations apart from current salary. For freelancers, a separate day rate field avoids comparing a daily rate with an annual salary.
Tags start as a good habit and end up in a mess. When 300 or 400 candidates carry the same one, it no longer tells anyone apart and the team goes back to posting the job ad.
Three habits keep tags useful:
- a short list, where each tag has a one-line definition;
- one person who approves new tags before they join the list;
- a review every quarter, to merge duplicates and remove tags that cover everyone.
The best information comes out of the interview: what the candidate is looking for, their constraints, what they said about their last job. When the notes stay in a shared document or an email, they leave the database. Nobody reads them for the next role.
Store the notes in the profile, and copy the information you filter on (availability, pay, mobility) into its own fields rather than leaving it in the text.
The five rules fit on one page the whole team can keep open:
For each field, write down the expected format, an example and who can add a value. Start with the five fields you filter on most often. The others can wait.
A data entry dictionary only holds if the team gets something out of it. Present it for what it is: the way to find your own candidates again without sourcing from scratch. A recruiter who finds, in five minutes, the profile she met six months ago does not need convincing twice.
To check that the rules hold, a light review is enough. Once a month, open five recent profiles at random and check that the key fields are filled in the right format. If a field is missing on more than two profiles, that is the one to simplify or make mandatory.
Do not rework everything. Fixing thousands of profiles by hand takes weeks and rarely gets finished. Apply the rules to new profiles now, then fix older ones as you go, when a candidate comes up for a role. The full method for bringing a talent pool back into use is in our guide to reactivating a candidate pool.
Hirify connects to your ATS and works at the moment the data is created. After each interview, it suggests values for the profile fields from the conversation, in the format each field expects, using the options of your lists and the shape of the values your team has already entered. The recruiter approves or corrects them before they are sent.
On the reporting side, the Reliability page shows which analyses your data supports today, with their coverage rate and the step that unlocks the rest.
- A filter only finds what is written like it: consistent data entry decides what the team finds.
- Anything you filter on becomes a closed list, anything that ages becomes a date.
- Pay is written in figures and broken down, in a single unit.
- Tags stay few, defined and reviewed every quarter.
- Interview notes live in the profile, and their key facts in their own fields.
- Apply the rules to new profiles first; the history follows as needs arise.