US H-1B & Green Card Sponsor Database avatar

US H-1B & Green Card Sponsor Database

Pricing

from $5.00 / 1,000 visa filing returneds

Go to Apify Store
US H-1B & Green Card Sponsor Database

US H-1B & Green Card Sponsor Database

Search official US Department of Labor H-1B, H-1B1, E-3, and PERM green-card sponsorship filings. Find sponsoring companies, roles, offered salaries, work locations, and approval outcomes from OFLC public disclosure data.

Pricing

from $5.00 / 1,000 visa filing returneds

Rating

5.0

(1)

Developer

Omar Eldeeb

Omar Eldeeb

Maintained by Community

Actor stats

2

Bookmarked

14

Total users

2

Monthly active users

13 days ago

Last modified

Share

Search official US Department of Labor sponsorship filings for H-1B, H-1B1, E-3, and PERM green-card cases. Find which companies sponsor a role, what they offered, where the job is located, and how filings were decided.

The actor reads the Department of Labor Office of Foreign Labor Certification public disclosure XLSX files, normalizes salary and location fields, and returns clean JSON rows that work well in CSV exports, dashboards, CRM enrichment, research workflows, and LLM pipelines.

What this actor does

  • Finds visa-sponsoring employers for a job title, city, state, salary range, visa type, and fiscal year.
  • Checks a specific employer's sponsorship footprint by role, filing count, salary range, and approval outcome.
  • Computes salary percentiles for a role and location from real DOL filing data.
  • Bulk-exports individual filing rows for downstream analysis.
  • Converts hourly, weekly, biweekly, and monthly wages into annual USD for comparison.
  • wageUnitInferred shows the pay unit the actor used when DOL published none or one that contradicts the amount. LCA FY2010 and PERM FY2013 files have no unit for the offered wage, so the same filing's prevailing-wage unit is used and reported there (wageUnit stays null).
  • Caches DOL disclosure files for faster repeated runs.
  • Supports "new filings only" watermarks for scheduled monitoring.

Common use cases

Use caseWhat you get
Job seekersA list of companies that have sponsored your target role in your target location, plus salary ranges and approval history.
RecruitersSponsor-aware sourcing lists based on role, market, visa type, salary, and filing recency.
Employer researchA company-level sponsorship profile by job title, salary range, location, and outcome.
Compensation researchSalary percentiles based on real visa filings rather than self-reported surveys.
Analysts and journalistsFiltered exports of official filing records for repeatable research.
SaaS and automation teamsStructured JSON output for webhooks, APIs, n8n, Zapier, and internal data products.

Input options

Mode

Choose one of four modes:

ModeDescription
sponsor-finderFinds employers sponsoring a role and returns one aggregate row per employer. Scans selected source files fully so rankings are accurate.
company-checkLooks up one employer and returns role-level aggregates followed by individual filing rows.
salary-lookupReturns salary percentile rows for a role and location. Scans selected source files fully so percentiles are accurate.
bulk-exportReturns individual filing records matching the filters. Best for quick samples because it stops as soon as maxItems filings are returned.

The prefilled marketplace run uses bulk-export, H-1B only, the latest fiscal year, and a small maxItems value. That keeps Apify quality checks and first-time tests fast. For deeper research, switch to sponsor-finder, company-check, or salary-lookup and broaden the fiscal years or visa types.

Filters

FieldDescription
roleJob title keyword such as software engineer, data scientist, or registered nurse. Required for sponsor-finder and salary-lookup.
employerCompany name keyword such as Google, Amazon, or Infosys. Required for company-check.
cityWorksite city filter. Leave empty for all cities.
stateTwo-letter US state filter. Leave empty for all states.
visaTypesAny combination of H-1B, H-1B1, E-3, and PERM. Defaults to H-1B; add PERM for green-card sponsorship filings.
decisionsAny combination of Approved, Denied, and Withdrawn. Defaults to Approved.
fiscalYearsUS fiscal years such as 2026 or 2025. Leave empty for the latest fiscal year. Multiple years take longer in aggregate modes because each selected source file is scanned before output rows are limited.
minSalaryMinimum annualized offered salary in USD.
maxSalaryMaximum annualized offered salary in USD.
maxItemsMaximum number of output rows, up to 50,000. In aggregate modes, this limits returned rows after the source files are scanned.
newFilingsOnlyWhen enabled, only returns filings newer than the saved watermark for the same input. Works in bulk-export and sponsor-finder. In sponsor-finder, a run returns the top maxItems employers. Filings of lower-ranked employers are still counted as seen, so later runs do not return them.

Example inputs

Find sponsors for a role

{
"mode": "sponsor-finder",
"role": "software engineer",
"state": "CA",
"minSalary": 150000,
"visaTypes": ["H-1B"],
"decisions": ["Approved"],
"fiscalYears": ["2026"],
"maxItems": 25
}

Check one company

{
"mode": "company-check",
"employer": "Nvidia",
"fiscalYears": ["2026", "2025"],
"maxItems": 50
}

Salary lookup

{
"mode": "salary-lookup",
"role": "data scientist",
"city": "Seattle",
"state": "WA",
"fiscalYears": ["2026"]
}

Bulk export

{
"mode": "bulk-export",
"role": "machine learning engineer",
"minSalary": 200000,
"fiscalYears": ["2026"],
"maxItems": 1000,
"newFilingsOnly": false
}

Output

Every dataset item includes a type field. The actor can return three row types.

filing

Individual DOL filing row. Returned by bulk-export and, after aggregates, by company-check.

{
"type": "filing",
"caseNumber": "I-200-25356-503701",
"visaType": "H-1B",
"decision": "Approved",
"decisionDate": "2025-12-30",
"filedDate": "2025-12-22",
"fiscalYear": 2026,
"employer": "NVIDIA CORPORATION",
"employerFein": "94-3177549",
"employerCity": "Santa Clara",
"employerState": "CA",
"jobTitle": "Software Engineer",
"socCode": "15-1252.00",
"wageOffered": 187574,
"wageUnit": "year",
"wageOfferedRaw": 187574,
"prevailingWage": 173329,
"prevailingWageLevel": "II",
"numberOfWorkers": 1,
"workCity": "Santa Clara",
"workState": "CA",
"workZip": "95051",
"sourceProgram": "LCA",
"sourceFile": "LCA_Disclosure_Data_FY2026_Q1.xlsx",
"sourceUrl": "https://www.dol.gov/sites/dolgov/files/ETA/oflc/pdfs/LCA_Disclosure_Data_FY2026_Q1.xlsx",
"scrapedAt": "2026-05-12T08:09:16.095Z"
}

Employer or role aggregate row. Returned by sponsor-finder and company-check.

{
"type": "sponsor-aggregate",
"employer": "GOOGLE LLC",
"role": "software engineer",
"filings": 333,
"approved": 333,
"denied": 0,
"withdrawn": 0,
"approvalRate": 100,
"medianSalary": 198000,
"p25Salary": 190000,
"p75Salary": 228000,
"minSalary": 143000,
"maxSalary": 380000,
"topCity": "Mountain View",
"topState": "CA",
"visaTypeBreakdown": { "H-1B": 333 },
"latestFiling": "2025-12-30",
"earliestFiling": "2025-11-04"
}

salary-distribution

Salary percentile row. Returned by salary-lookup.

{
"type": "salary-distribution",
"role": "data scientist",
"city": null,
"state": "CA",
"count": 244,
"p10Salary": 123531,
"p25Salary": 143701,
"medianSalary": 174913,
"p75Salary": 217226,
"p90Salary": 248976,
"topEmployer": "GOOGLE LLC",
"visaTypeBreakdown": { "H-1B": 244 }
}

Pricing

This actor uses pay-per-event pricing. You pay for the rows you get back and for the DOL data the run reads to produce them.

EventPriceWhen it is charged
Actor start$0.01 per GB of memoryCharged by Apify when a run starts. A run with the default 4 GB costs $0.04.
Visa filing returned$0.005Each individual filing row returned.
Employer aggregate returned$0.002Each sponsor aggregate row returned.
Salary percentile row$0.003Each salary distribution row returned.
DOL filings scanned$0.015 per 10,000 filingsFrom 7 November 2026. Each 10,000 rows of DOL source data the run reads, matched or not. Every DOL file opened costs at least 2 units.

Why there is a scan charge

The scan charge applies to runs from 7 November 2026. Runs before that date pay only for the start and the rows returned.

Accurate rankings and salary percentiles need the whole DOL file, not just the matching rows. A current H-1B file holds about 437,000 filings, and the actor reads all of them even when it returns 25 rows. The scan charge covers that work. It is charged while the file is read, in batches of 10,000 filings. A run that stops at its time limit, is aborted, or matches nothing pays only for what it scanned.

Worked examples

These are measured runs at the default 4 GB of memory.

RunFilings scannedChargesTotal
Default sponsor-finder: "software engineer", H-1B, latest year, 25 rows437,49644 scan units $0.66, 25 aggregates $0.05, start $0.04$0.75
Small PERM lookup: sponsor-finder "engineer", PERM FY2013, 15 rows44,1525 scan units $0.075, 15 aggregates $0.03, start $0.04$0.145
Bulk export: 300 "software engineer" H-1B filings, latest year3,5312 scan units $0.03, 300 filings $1.50, start $0.04$1.57

Bulk export stops reading once it has enough matching filings, so it scans less. Aggregate modes always read the full file.

Maximum cost per run

If you set a maximum cost per run, the actor checks it before each batch of 10,000 filings. It always keeps enough of your limit to write the result rows found so far. When the next batch would leave too little for those rows, the scan stops early so the rows found so far fit inside your limit. The actor then returns those rows, marks aggregates as partial, and says "max charge reached" in the status message with the number of filings scanned.

There is no free trial inside the actor. Every priced event is charged from the first one.

Data source and freshness

The actor reads public disclosure files from the US Department of Labor Office of Foreign Labor Certification performance data page:

https://www.dol.gov/agencies/eta/foreign-labor/performance

DOL publishes new quarterly disclosure data after each fiscal quarter closes. The actor discovers available files from the DOL page at run time and caches both the file index and downloaded XLSX files to reduce repeat downloads.

Notes and limitations

  • H-1B, H-1B1, and E-3 records are sourced from DOL LCA disclosure files.
  • PERM green-card sponsorship records are sourced from DOL PERM disclosure files.
  • Salary values are normalized to annual USD when DOL publishes hourly, weekly, biweekly, or monthly wage units.
  • The actor reads the primary worksite columns exposed in the disclosure file. Some filings may include additional worksites not represented in the primary columns.
  • Approval analytics are based on DOL case status values in the disclosure data.

The source files are public US Government Department of Labor publications. This actor does not infer protected characteristics, identify workers, or add private data. It normalizes public employer, role, salary, location, and decision fields for easier analysis.

Use the data responsibly. Employer outreach, recruiting, and analytics workflows should comply with applicable privacy, anti-spam, employment, and immigration rules.

FAQ

How far back does it go?

H-1B/LCA and PERM data are available from FY2008 onward. Older years are published as annual files and newer years as quarterly files.

Why can the first run be slower?

Some DOL XLSX files are large. The first run downloads and parses the relevant files, then stores them in a named key-value cache. Later runs against the same files are faster.

Can I schedule this?

Yes. For monitoring, schedule a weekly run and set newFilingsOnly to true. The actor stores a watermark for the same filter set and returns only newer matching filings.

In sponsor-finder mode, each run returns the top maxItems employers among the new filings. Filings of employers ranked below that cut are still marked as seen. If you need every employer, raise maxItems.

Can I export the results?

Yes. Apify datasets can be exported as JSON, CSV, Excel, HTML, RSS, and via API.

Support

For issues or feature requests, use the actor's Apify Store listing or contact omar.eldeeb@remotegrowthpartners.com.