Research notes, diagnostic frameworks and field observations from our consulting and training work with organisations across Ghana and beyond. Written for the HR lead who has to make a decision this quarter.
The first two hours with a new HR extract decide most of what follows. Eight checks, in order, before forming any view of what the data says.
Emmanuel Duncan · 7 September 2026 · 6 min read
A client sends an export. It is usually a spreadsheet, usually pulled from a payroll or HRIS system by someone who was asked for "the staff data", and it usually arrives with a note apologising for the state of it.
What happens in the next two hours decides most of what follows. This is the sequence I use, in order, and the reasoning behind each step. It is mostly counting, and the value lies in doing it before forming any view of what the data says.
The first question is what a single row represents. One person, one employment record, one payroll line, one person per month, or one row per contract with the same person appearing four times.
Count the rows, then count the distinct identifiers. If the two differ, find out why before doing anything else. A person appearing three times because they had three contracts is different from a person appearing three times because the export ran over three months, and the two produce very different headcounts from the same file.
I ask the sender directly instead of inferring it. The answer usually takes one message and saves a day.
Then examine the identifier field itself. Blanks, duplicates, placeholder values, identifiers that are obviously reused, and whether the same person appears under two identifiers because they left and returned.
Rehires are worth finding early. They break tenure calculations and they inflate the leaver count if the earlier record is still open.
Dates carry more errors than any other field type and the errors are the most consequential, because tenure, turnover and age all flow from them.
For each date column, find the minimum and maximum, count the blanks, and look at the distribution. Appointment dates before the organisation existed. Exit dates in the future. Dates of birth that would make somebody eleven years old or eighty three. Appointment dates clustered heavily on the first of January, which usually means a data migration filled in a default when the real date was unknown.
That last pattern is worth checking specifically. It is common in organisations that changed systems, and it silently makes several years of tenure analysis wrong in one direction.
Also check the format. Exports mixing day first and month first formats within one column will produce a file where roughly two thirds of the dates are correct and the rest are quietly wrong.
A simple count of empty cells per column, expressed as a share of rows.
This tells you which analyses are available. A unit field that is ninety eight percent complete supports departmental breakdowns. An exit reason field that is thirty percent complete does not support anything, and knowing that in hour one prevents a promise in the meeting.
I also look at whether the blanks concentrate. Missing values spread evenly across the file are a nuisance. Missing values concentrated in one department or one period usually mean something happened there, and that is worth asking about.
For each categorical column, list the distinct values and their counts.
This is where most of the real problems surface. Grade fields with forty distinct values where the organisation has twelve grades, because of spelling variants, spacing and abbreviations. Unit names that changed mid year so the same department appears twice. Gender fields with five values. Employment type fields where casual, casuals, Casual and temporary all mean the same thing.
Cleaning these is straightforward. Finding them after producing a headcount by grade is not, because the wrong figure will already have been seen.
Count the rows with an exit date and the rows without one. Then compare that split against what the organisation believes about its own turnover.
Where they disagree substantially, there is usually a status field that has not been maintained, or leavers were deleted rather than dated, or the export filtered to active staff and the leavers are simply absent. Each of those changes what can be done with the file, and the third means asking for a different export before starting.
Before any analysis, take the headcount the file produces and put it beside the figure the client last reported.
If they match, say so in the first meeting and the rest of the engagement runs on a foundation everyone accepts. If they do not, the gap becomes the first piece of work, and it is nearly always a definition difference rather than an error.
This step is the one that has saved me the most difficulty over the years. A finding presented against a headcount the client does not recognise will be argued about on the wrong ground.
Only at this point do I look at anything substantive. Headcount by unit, by grade, by employment type. Tenure distribution. Age distribution where date of birth is reliable.
Treat all of it as orientation. Its job is to generate the questions worth asking. A grade structure where three quarters of staff sit in two grades. A tenure distribution with a gap where a recruitment freeze was. A unit whose average tenure is a third of everyone else's.
I write those observations down as questions for the client rather than as conclusions, because at this stage every one of them has at least two explanations and only the client knows which.
A short note. What the file contains, what one row is, which fields are usable and which are not, the headcount it produces and how that compares with the client's own figure, and five or six questions.
That note sets expectations before anyone is committed to a deliverable, and it makes the data quality conversation a normal early step rather than an excuse offered later.
If you are looking at your own organisation's data instead of a client's, run steps one to six on your current extract this week. The exercise takes an afternoon.
The findings will be uncomfortable and they will be worth having, because every report you have produced from that file already carried them.
Emmanuel Duncan is the founder of Aletheia Lunara Consult, a professional education and consulting practice working with organisations across Ghana and beyond on people analytics, workforce research and organisational capability.
Recognise your own organisation in one of these?
These pieces come from live consulting and training work. If one of them describes something you are dealing with right now, book a consultation and we will walk through how we approached it.
A professional education and consulting firm providing professional learning, expert access, research and analytics, and workforce development solutions.
Data-Driven Decisions
People | Skills | Innovation | Impact
Email: training@aletheialunaraconsult.org
Phone: +233 506 377 826
WhatsApp: WhatsApp Chat
Fully remote. In-person workshops and training programmes are held at designated venues in Accra.
STAY CONNECTED
