Sources and method
2,862 posted ranges · 93 companies · 93,898 H-1B filings · 18 cities
Posted ranges
Pay-transparency laws in California, New York, Washington, Colorado, Illinois and other states require employers to state a pay range in job postings. Salaries reads those ranges from each employer\'s public job board: the Greenhouse Job Board API, the Ashby Posting API and the Lever Postings API, the vendors\' documented public interfaces for career pages. Each of the 131 boards is read once a week, on Wednesdays. A range is kept only when the posting itself states one in US dollars per year (structured compensation on Ashby and Lever, or a "$180,000 - $250,000" style range in the posting text); hourly and monthly figures and non-US postings are dropped. When a posting lists several location zones, the first stated range is kept. Every range links to its posting.
Robots and terms
Before a board is read, the company\'s own robots.txt is checked every week. A company whose robots.txt disallows all automated readers, or its careers or jobs pages, is skipped, and so is one whose robots.txt cannot be read (it is checked again the next week). The ATS hosts allow these reads (Greenhouse disallows only /embed/, Lever allows everything with a one-second delay, which is kept).
Skipped this week:
- Affirm (affirm.com): robots.txt disallows /jobs/, checked 2026-09-24
- Chime (chime.com): robots.txt answered 403, checked 2026-09-24
- DoorDash (doordash.com): robots.txt answered 403, checked 2026-09-24
- Epic Games (epicgames.com): robots.txt answered 403, checked 2026-09-24
- Gusto (gusto.com): robots.txt answered 403, checked 2026-09-24
- Instacart (instacart.com): robots.txt disallows all paths for every agent, checked 2026-09-24
- Midjourney (midjourney.com): robots.txt answered 403, checked 2026-09-24
- Physical Intelligence (physicalintelligence.company): robots.txt answered 429, checked 2026-09-24
- Pika (pika.art): robots.txt disallows /jobs, checked 2026-09-24
- Pinterest (pinterest.com): robots.txt disallows all paths for every agent, checked 2026-09-24
- Reddit (reddit.com): robots.txt disallows all paths for every agent, checked 2026-09-24
- Shield AI (shieldai.com): robots.txt unreachable (fetch failed), checked 2026-09-24
H-1B wages
The US Department of Labor publishes every Labor Condition Application each quarter (OFLC LCA disclosure data). Salaries keeps the certified, full-time H-1B filings of the employers it tracks, reads the job title with the same title map as posted ranges, and uses the offered annual wage (the middle of the stated range when there is one). Names, contacts, attorneys and addresses in the file are never read into the site; only counts, medians and quartiles are shown. Files are loaded by hand each quarter when DOL publishes one; the weekly run checks for a new file.
- LCA_Disclosure_Data_FY2025_Q1.xlsx: decisions 2024-10-01 to 2024-12-31
- LCA_Disclosure_Data_FY2025_Q2.xlsx: decisions 2025-01-02 to 2025-03-31
- LCA_Disclosure_Data_FY2025_Q3.xlsx: decisions 2025-04-01 to 2025-06-30
- LCA_Disclosure_Data_FY2025_Q4.xlsx: decisions 2025-07-01 to 2025-09-30
- LCA_Disclosure_Data_FY2026_Q3.xlsx: decisions 2025-10-01 to 2026-06-30
Titles, levels and cities
Job titles map to roles with the synonym map from Titles (data, AI, engineering, research and engineering-management titles), plus one broad Software Engineer bucket. The level is read from the title only (Senior, Staff, Principal, Manager and so on); a title without a level word is Not stated. Locations map to US metros; remote US postings are their own group.
Medians
Each posting counts once, at the midpoint of its range. Tables show the median midpoint, the medians of the posted minimums and maximums, and a band from the 25th to the 75th percentile. A median needs at least 3 postings or filings; smaller groups show the range itself. Base salary only: equity, bonus and benefits are in neither source.
History
Nothing is overwritten. A new posting, a changed minimum or maximum, a retitled posting and a closed posting are each logged with the date and the posting link (the database refuses deletes and edits of that log). Weekly medians per title, company and city are written once per week and never rewritten; H-1B quarters are added, never replaced. History since Sep 24, 2026: the Changes page and /api/changes.
About this data
Pay ranges posted on public Greenhouse, Ashby and Lever job boards, read every Wednesday, and certified H-1B wages from US Department of Labor files, loaded quarterly; unverified boards are marked. Base salary only, not total pay or an offer. The list grows as each run finds more companies' job boards. Not investment advice. Logos via logo.dev; trademarks belong to their owners.
Data
JSON at /api/titles, /api/postings and /api/h1b, plain text at /llms-full.txt. For AI agents: /agents and /openapi.json.