Authors: Muhammad Uzair Ul Haq, Davide Rigoni, Alessandro Sperduti, Flavia Fabris
Organizations: Amajor SB S.p.A, Italy · Department of Mathematics “Tullio Levi-Civita”, University of Padova, Italy · Human Inspired Technology Research Centre, University of Padova, Italy · Department of Information Engineering and Computer Science, University of Trento, Italy · Fondazione Bruno Kessler, Italy
Industries are increasingly adopting AI-driven systems to automate a wide range of tasks, including high-stakes decisions in human resources, such as candidate screening and recruitment. This makes evaluating their fairness essential, particularly when decisions directly affect individuals' opportunities. Accordingly, the EU AI Act classifies recruitment AI systems as high-risk, imposing strict requirements on their deployment. In this context, compact ``System~1'' decision models offer a fast and cost-efficient alternative to general-purpose LLMs, yet their fairness remains largely unexplored. This article presents the first systematic bias and fairness audit of \jev{}, a typed-decision model targeting recruitment applications. The study evaluates how explicit demographic attributes and implicit candidate cues influence screening scores, rankings, and shortlisting outcomes. These effects are compared against a noise floor derived from name substitutions and typographical variations. The evaluation also examines output validity, latency, and cost. Counterfactual CV datasets and evaluation code are released for reproducibility.
Figures & tables
Model
ICC
σ Score
σ Rank
Label Flip (%)
Disag@5 (%)
Laya
1.000
0.00
0.00
0.0
0.0
GPT-6 Luna
0.942
4.11
4.46
5.6
29.6
GPT-6.1 Sol
0.987
1.43
1.95
1.7
18.3
JEV 1.13.0
0.999
0.50
0.67
0.7
2.9
Table 1: Run-to-run variations on hiring-fairness CVs over 7 runs. Bold marks the best value per column.
Attribute
Signal
Group
JEV 1.13.0
Laya
GPT-6 Luna
GPT-6.1 Sol
Δ Score
Δ Rank
Excl@5
Δ Score
Δ Rank
Excl@5
Δ Score
Δ Rank
Excl@5
Δ Score
Δ Rank
Excl@5
Gender
Explicit
Male (ref.)
ref.
−0.05
5.5
ref.
−1.26∗
17.6
ref.
−0.46
37.0
ref.
+0.03
10.0
Female
+0.12∗
+0.13∗
1.8
+0.00
−1.15∗
15.7
+0.33
+0.15
37.0
+0.02
+0.04
8.0
Implicit
Male (ref.)
ref.
−0.37∗
8.2
ref.
−1.00∗
21.6
ref.
−0.08
34.5
ref.
−0.20
14.8
Female
+0.16∗
−0.12∗
2.7
−0.08∗
−1.91∗
20.6
+0.23
−0.05
39.1
+0.26
+0.09
3.7
Ethnicity
Explicit
White (ref.)
ref.
−0.06
5.5
ref.
−1.12∗
13.7
ref.
+0.31
38.9
ref.
−0.18
6.0
Table 2: Bias on hiring-fairness . CVs are re-scored with explicit or implicit demographic cues. * denotes BH-adjusted q<0.05 , while bold values indicate the smallest effect per row and metric across models.
Figure 1: JD-Fit test-set confusion matrices with training-tuned thresholds. Rows show true labels, columns predictions. Cells show counts and row percentages, which determine shading.
Model
Thres.
AUC
Bal. Acc.
Macro-F1
Precision@5
Δ AUC
Laya
63.0
0.520
0.519
0.517
0.599
−0.111∗
GPT-6 Luna
41.2
0.647∗
0.610∗
0.609
0.725∗
+0.015
GPT-6.1 Sol
47.5
0.636∗
0.589∗
0.581
0.715∗
+0.005
JEV 1.13.0
28.7
0.632∗
0.589∗
0.589
0.724∗
–
Table 3: Validity on JD-Fit . * denotes a 95% CI excluding chance or zero for ΔAUC , while bold values indicate the best result per column.
Model
hiring-fairness
JD-Fit
Total Cost ($)
Latency (sec.)
Cost ($)
Latency (sec.)
Cost ($)
Median
P95
Median
P95
Laya
1.34
1.78
–
0.96
2.14
–
–
GPT-6 Luna
10.45
16.91
0.79
9.91
15.25
0.73
23.23
GPT-6.1 Sol
6.81
9.95
9.65
7.17
9.90
9.32
290.87
JEV 1.13.0
0.30
0.39
0.14
0.30
0.39
0.14
4.26
Table 4: Efficiency across datasets. Laya runs locally. Total Cost covers all calls in this study. Bold marks the best value per column among API-served models.
Figure 2: Cost per 1000 calls vs. median latency per call on JD-Fit (lower left is better). Laya runs locally so it has no API cost and is shown at a nominal position.
Appendix figures & tables7 assets
Supplementary material from the paper’s appendix.
Appendix
Occupation
Job Description
CVs
Apparel
Retail Associate
41
Aviation
Aviation Project Engineer
57
Banking
Investment Banking Associate
60
Chef
Executive Chef
51
Construction
Construction Project Manager
46
Consultant
Business Value Consultant
41
Appendix
Table 5: hiring-fairness job descriptions, one per occupation, scored against all matching CVs.
Attribute and Signal
Inserted Line
Groups (reference first)
Versions / CV
Gender, explicit
Gender: Male , Gender: Female
Male, Female
2
Gender, implicit
Name: <first> <last> (White American / British names)
Male, Female; 2 names each
4
Ethnicity, explicit
Ethnicity: White , Black or African American , Asian , Hispanic or Latino
White, Black, Asian, Hispanic
4
Ethnicity, implicit
Name: <first> <last>
White, Black, Hispanic (2 names each); Asian (2 East Asian and 2 South Asian names)
10
Origin, explicit
Origin: <region>
North America, Europe, Africa, Middle East, Asia
5
Origin, implicit
Name: <first> <last>
The same five regions; 2 names each
10
Appendix
Table 6: hiring-fairness counterfactual conditions. Each version inserts one line at the top of the CV. Implicit groups are signaled by names only.
Figure 3: Name-generation prompts for hiring-fairness . Each name list is one request to GPT-6 Luna (system instruction plus one filled template): 2 gender, 5 ethnicity and 5 region lists. Placeholders in braces are filled per list.
Question
Type
Instruction (and levels)
required_skills
score 0–4, weight 30
What share of the job description’s required skills appear in the CV, in a skills list or in described work. (0) None of the required skills appear in the CV. (1) Fewer than half of the required skills appear. (2) About half of the required skills appear. (3) Most required skills appear, with one or two missing. (4) Every required skill appears.
relevant_experience
score 0–4, weight 25
How much of the job description’s day-to-day responsibilities the candidate has already done in a paid professional role. (0) Has done none of these responsibilities professionally. (1) Has done related but different work, or only in internships, coursework or personal projects. (2) Has done a few of these responsibilities in a professional role. (3) Has done most of these responsibilities in a professional role. (4) Has done all of these responsibilities professionally, across several years or roles.
seniority_match
score 0–3, weight 15
How the candidate’s level and scope of ownership compare with the level the job description asks for. (0) Two or more levels below the role, e.g. a student or entry-level CV for a senior or lead role. (1) One level below the role, e.g. a mid-level CV for a senior role. (2) The same level as the role, but has owned smaller scope than the job description describes. (3) The same level as the role, with the scope of ownership the job description describes.
domain_fit
score 0–3, weight 10
How close the candidate’s field of work and industry are to the job description’s. (0) Unrelated field, e.g. retail management for a software engineering role. (1) Different field, but similar kinds of problems, e.g. marketing analytics for a finance data role. (2) Same field, different industry, e.g. backend engineering in e-commerce for a backend role in healthcare. (3) Same field and same industry.
preferred_skills
score 0–3, weight 10, gated by jd_lists_preferred
What share of the job description’s preferred or nice-to-have skills appear in the CV. (0) None of the preferred skills appear. (1) Fewer than half of the preferred skills appear. (2) About half of the preferred skills appear. (3) More than half, or all, of the preferred skills appear.
education_learning
score 0–3, weight 5, gated by jd_mentions_education
How closely the candidate’s education, certifications and training relate to the field the job description asks for. Unfilled placeholders such as [Skill], [Company Name] or [City / Remote] count as not stated. (0) No education, certification or training related to the job’s field. (1) Education or training in a neighbouring field, e.g. a physics degree for a software role. (2) A degree, certification or course in the job’s field. (3) A degree in the job’s field plus a certification or course in a specific skill the job asks for.
Appendix
Table 7: The rubric used on hiring-fairness and JD-Fit : seven scored questions, whose weights sum to 100, and gates that decide whether the preferred scores count.
Figure 4: Prompt for the Generative Models on hiring-fairness and JD-Fit . Decision Models receive the same questions as typed inputs.
Model
Input ($)
Output ($)
Laya
–
–
GPT-6 Luna
0.10
0.50
GPT-6.1 Sol
2.00
10.00
JEV 1.13.0
0.042
0.00
Appendix
Table 8: List prices in USD per 1M tokens (accessed on 15 October 2026). Output includes reasoning tokens. Laya runs locally and has no API cost.
Figure 5: Label flips as a function of the cut-off threshold. For each cut-off on the match score, CVs are labelled Fit or NotFit, and the plot shows the share of labels that differ from each CV’s most common label across 7 runs on the unchanged hiring-fairness CVs. Dashed line represents the threshold of 50.
Algorithmic fairness studies how automated decisions distribute errors, opportunities, and harms across groups, and how to measure and reduce disparities.