Skip to content
IsJobSafe
Methodology

How We Calculate Risk

Every figure on this platform traces back to a public government statistical release. Here's what we measure, where the data comes from, and how to read the scores.

Risk Score Model
COMPOSITE RISK SCORE (0 – 100)

Every occupation receives a score from 0 (very safe) to 100 (critical risk). The score is generated by a proprietary multi-factor model that analyses several dimensions of labour market health simultaneously. The specific weighting methodology is part of our proprietary research process.

When multiple dimensions deteriorate at the same time — for example, hiring is falling and wages are stagnating and the occupation is highly automatable — the score rises nonlinearly. A single weak signal alone rarely pushes a job into the danger zone. It's the combination and interaction of signals that matters. The model also applies dynamic confidence weighting based on data completeness per occupation.

What We MeasureData SourceWhat It Tells You
Hiring DemandGovernment vacancy and job openings dataAre employers still hiring for this role — or pulling back?
Wage TrendsGovernment wage statisticsAre wages rising with inflation, stagnating, or falling?
Employment LevelsGovernment labour force surveysIs the total workforce in this occupation growing or shrinking?
AI & Automation ExposureO*NET task analysis dataHow much of this job's daily work could be done by software or machines?
Structural VulnerabilityCross-dimensional analysisHow do these factors compound when multiple signals move together?
Supplementary Signals
Risk Velocity
Is the score getting worse or better month-over-month? Positive velocity means the situation is deteriorating.
Stability
How predictable is this job’s trajectory? Jobs with erratic scores get flagged differently than those on a steady trend.
Confidence
How complete is our data for this occupation? A higher confidence score means more data inputs were available.
Risk Tier Classification
TierScore RangeInterpretationRecommended Action
CRITICAL75 – 100Multiple simultaneous stress signals: hiring collapse, wage compression, AND high AI exposureImmediate upskilling or adjacent career pivot warranted
HIGH60 – 74Strong structural headwinds — at least two major factors decliningMonitor closely; begin contingency planning
ELEVATED45 – 59Emerging pressure — one significant factor decliningStay aware of industry trends; maintain skill currency
LOW30 – 44Minor signals; below-average risk relative to labour marketNo immediate action required
STABLE0 – 29All indicators positive or flat; occupation is structurally soundCareer path well-supported by current labour market
Data Sources
BLSBureau of Labor Statistics
US
DatasetCadenceFields UsedLink
Occupational Employment & Wage Statistics (OES)Annual (May)Employment, median wage, occupation codesSOURCE
Job Openings and Labor Turnover Survey (JOLTS)MonthlyJob openings, hires, separationsSOURCE
Employment Projections 2023–2033BiennialProjected employment change by occupationSOURCE
FREDFederal Reserve Economic Data
US
DatasetCadenceFields UsedLink
Indeed Job Postings IndexWeeklyJob postings YoY change by sectorSOURCE
JOLTS Total Job Openings (JTSJOL)MonthlyTotal job openings in thousandsSOURCE
StatCanStatistics Canada
CA
DatasetCadenceFields UsedLink
Labour Force Characteristics by Occupation (14-10-0023-01)MonthlyEmployment by NOC occupation, Canada totalSOURCE
Job Vacancies by Occupation (14-10-0288-01)QuarterlyJob vacancies, offered wages by NOCSOURCE
Average Hourly Wages by Occupation (14-10-0063-01)MonthlyMedian hourly wages by occupationSOURCE
ONSOffice for National Statistics
GB
DatasetCadenceFields UsedLink
Employment by Occupation (EMP04)QuarterlyEmployment by UK SOC major groupSOURCE
Average Weekly Earnings (EARN01)MonthlyAverage weekly pay, total and regularSOURCE
Vacancies (VACS02)MonthlyJob vacancies by industry sectorSOURCE
ABSAustralian Bureau of Statistics
AU
DatasetCadenceFields UsedLink
Labour Force, Australia (6202.0)MonthlyEmployment by ANZSCO major groupSOURCE
Job Vacancies, Australia (6354.0)QuarterlyTotal job vacancies by industrySOURCE
Wage Price Index (6345.0)QuarterlyWPI by industry, quarterly % changeSOURCE
EurostatEurostat
EU/EEA
DatasetCadenceFields UsedLink
Employment by ISCO-08 (lfsa_egai2d)AnnualEmployment by 2-digit ISCO occupation, 34 countriesSOURCE
Labour Cost Index (lc_lci_r2_q)QuarterlyWage cost index by NACE sector, base 2020SOURCE
Job Vacancy Statistics (jvs_q_nace2)QuarterlyJob vacancies by NACE sector, 29 countriesSOURCE
e-StatStatistics Bureau of Japan (e-Stat)
JP
DatasetCadenceFields UsedLink
Labour Force Survey — Employment by OccupationMonthlyEmployment by JSCO major groupSOURCE
Monthly Labour Survey — WagesMonthlyAverage wages by industry sectorSOURCE
AdzunaAdzuna
MULTI
DatasetCadenceFields UsedLink
Job Vacancy Counts by OccupationReal-timeLive job postings by ISCO-mapped category, 16 countriesSOURCE
O*NETO*NET Center
GLOBAL
DatasetCadenceFields UsedLink
O*NET Database 29.0 — Work ActivitiesQuarterlyTask importance, cognitive vs manual ratio, social intensitySOURCE
Occupation Crosswalk (SOC 2018 / 2010)StaticSOC-to-NOC mapping for cross-country analysisSOURCE
Cross-Country Occupation Mapping

Each country uses a different occupational classification system. To enable cross-country comparisons, IsJobSafe maps occupations using the following standards:

CountryClassification SystemVersionMapping Method
USStandard Occupational Classification (SOC)SOC 2018Direct — all BLS data uses SOC codes
CANational Occupational Classification (NOC)NOC 2021BLS-to-NOC crosswalk via O*NET / HRSDC mapping tables
GBUK Standard Occupational Classification (UK SOC)SOC 2020SOC-to-UKSOC crosswalk; major group alignment
AUAustralian and NZ Standard Classification (ANZSCO)ANZSCO 2013ANZSCO major group to SOC major group alignment
EU (34)International Standard Classification of Occupations (ISCO-08)ISCO-08ISCO 2-digit to SOC major group alignment via custom mapping
JPJapan Standard Classification of Occupations (JSCO)JSCO 2009JSCO major group to ISCO/SOC alignment
Live Pipeline Log
ScriptSourceCountryRowsStatusLast Run
compute_risk.pyCOMPUTEDALL2,847SUCCESS2/25/2026
compute_risk.pyCOMPUTEDALL0ERROR2/25/2026
compute_risk.pyCOMPUTEDALL2,847SUCCESS2/25/2026
compute_risk.pyCOMPUTEDALL2,847SUCCESS2/25/2026
fetch_eurostat.pyEurostatALL5,083SUCCESS2/25/2026
compute_risk.pyCOMPUTEDALL2,847SUCCESS2/25/2026
fetch_eurostat.pyEurostatALL5,083SUCCESS2/25/2026
compute_risk.pyCOMPUTEDALL2,847SUCCESS2/25/2026
compute_risk.pyCOMPUTEDALL0ERROR2/25/2026
compute_risk.pyCOMPUTEDALL0ERROR2/25/2026
compute_risk.pyCOMPUTEDALL0ERROR2/25/2026
compute_risk.pyCOMPUTEDALL2,847SUCCESS2/25/2026
Limitations & Disclaimers
01

IsJobSafe is a quantitative signal system, not a career counselling service. Scores reflect statistical trends in public data, not individual job security.

02

Occupational data release cycles vary by country and dataset. Some scores may lag real-world conditions by 1–3 months.

03

Cross-country comparisons use aligned major occupation groups. Detailed sub-occupation comparisons between countries are not directly comparable.

04

AI exposure scores are derived from O*NET task descriptors using a composite model. They reflect structural susceptibility to automation, not guaranteed displacement timelines.

05

All data is sourced from public government statistical agencies. IsJobSafe does not modify, estimate, or interpolate source figures.