Where the data comes from
The Index uses every active job on Joonow, which gathers listings published on career sites and applicant tracking systems (ATS) and frequently checks each job at the source: when it closes there, it leaves Joonow. Only jobs in Brazil are included.
The monthly snapshot
On the 1st of each month at 1 am (Brasília time) we take a snapshot of active jobs: it is the edition for the month that just ended. Open jobs are those open at that moment. New jobs are those posted within the month (UTC) that were still open at the snapshot. Before a month's first snapshot, the page shows preliminary numbers, calculated on the fly and labelled as such.
Duplicates across sources
The same job often appears on more than one site. Jobs from the same company, with the same title and in the same city count once. We keep the copy that discloses pay (if any) and the earliest posting date.
What is left out
Résumé databases that are not real jobs (“talent pool”, “reserve list”) and jobs outside Brazil. Jobs without a state or city count in the total but not in the location charts.
Job titles
To group the same job written in different ways, we remove accents, capitalization, gender markers (“(a)”, “/a”), trailing levels (junior, mid, senior, I, II), extras in parentheses and anything after “ - ” or “ | ”. “Vendedor(a) Externo - Zona Sul” and “VENDEDOR EXTERNO PL” become the same title. The name shown is the group's most common spelling (titles stay in Portuguese).
Salaries
Only monthly salaries in reais disclosed by the employer are used. When a listing gives a range, we use its midpoint. Values below R$ 400 or above R$ 100,000 a month are discarded as data-entry errors (hourly or yearly pay, typos). Quartiles use linear interpolation (the same method as spreadsheets' PERCENTILE.INC) rounded to whole reais. Ranges by title are only published with at least 30 jobs disclosing pay.
Work model and contract
On-site, hybrid or remote and the contract type come from the listing, as stated by the employer or as Joonow identified in the text. When it cannot be known, the job shows as “not stated”, with no guessing.
Limitations
The Index shows the jobs that reach Joonow, not the whole job market: sectors and regions with few online listings appear less. Because the search index keeps only active jobs, jobs opened and closed within the same month do not count as “new jobs”. New sources can shift numbers from one month to the next; when that matters, we say so in the edition.
Versions, license and citation
This is version 1 of the methodology. Published editions are not recalculated. Each edition's data can be downloaded as CSV and freely used under the CC BY 4.0 license, crediting the source: Joonow Job Market Index, month and year, Joonow, with the edition link.
CSV columns
section (block: meta, region, city, title, work_model, employment_type, seniority, salary, salary_title), key (code), label (name), value (jobs or value), share (0 to 1), p25, p50, p75 (quartiles in reais) and sample (jobs with pay). UTF-8 encoding, comma separator.