How We Estimate Salaries
Salary data on job boards is often wrong, missing, or copied from another country. On AIEngineer.careers, we show compensation when it helps you compare roles — and we label or hide it when we are not confident.
Where salary numbers come from
Sources fall into three buckets:
- Employer-submitted posts — ranges entered by the company on this site.
- Imported postings — text parsed from public career pages (annual, hourly, or local currency).
- Inference — when a posting mentions pay in prose but not in a structured field.
We store salaries in USD for filtering. Original currency and hourly rates may appear in the job description or in our editorial summary when they were part of the source text.
When you see (est.)
The label (est.) on a job card or detail page means the number is not a verbatim copy of a clean annual range from the employer. Common cases:
- Hourly contract rates converted to an annual figure for comparison.
- Foreign currency converted to USD using approximate rates.
- Ranges inferred from free-text in the description (for example "€90k–€110k").
- AI normalization during import when only partial pay data existed.
An unlabeled range usually means we believed it was a stated annual amount in a plausible band — still verify with the employer before you negotiate or accept.
When we hide salary entirely
Some numbers are worse than missing. We hide salary badges when:
- Min and max are identical but unrealistically low for the role (for example $3K–$3K for a senior AI engineer).
- Parsed values look like monthly or hourly amounts mistaken for annual pay.
- The range is below a sanity floor for full-time engineering roles in the dataset.
The job may still mention pay in the imported description below our summary. Read that section — and the employer's site — for the authoritative figure.
Limitations you should assume
Job boards rarely know equity, signing bonuses, geo bands for remote roles, or internal leveling. A single "salary" field cannot capture:
- Stock options or RSUs (common at AI labs and startups).
- Different bands for the same title across countries.
- Contract vs full-time compensation structures.
- Total compensation vs base salary only.
Use our figures to sort and filter, not to make a final decision.
What to do as a candidate
Before you invest in an application loop:
- Check the employer's careers page for the same role ID or location.
- Ask recruiting for base, bonus, equity, and geo policy in the first screen.
- Compare labeled estimates against market reports for your city and seniority.
If a listing shows a bad range, report it from the job page — we use reports to improve parsing and hide junk data.
More context
How listings work covers imports and employer attribution. What an AI engineer role actually is explains how we think about titles versus categories on this board.