DOL Prevailing-Wage Worksites (FY2026 Q3, quarter-to-date)
Pricing
from $13.40 / 1,000 wage worksite records
DOL Prevailing-Wage Worksites (FY2026 Q3, quarter-to-date)
Structured worksite-level prevailing-wage detail — the per-worksite companion to the OFLC prevailing-wage determinations — read directly from the official U.S.
Pricing
from $13.40 / 1,000 wage worksite records
Rating
0.0
(0)
Developer
NexGen Watch
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Share
🔔 DOL Prevailing-Wage Worksites (FY2026 Q3, quarter-to-date)
Structured worksite-level prevailing-wage detail — the per-worksite companion to the OFLC prevailing-wage
determinations — read directly from the official U.S. Department of Labor Office of Foreign Labor Certification
class-A bulk worksite workbook at
https://www.dol.gov/sites/dolgov/files/ETA/oflc/pdfs/FY26Q3/PW_Worksites_FY2026_Q3.xlsx. One record per non-empty,
de-duplicated worksite row, carried source-native with the value unmodified.
Output is one wage_worksite_record row per result; billing is pay-per-event, the value event being one wage worksite record (a $0.02 start fee per run, then $0.02 per wage worksite record). Source: www.dol.gov.
📊 Sample Output
Real rows from run jRPFAfShaWbzshtf3 on build 0.1.3 (2026-09-19), the same input as the Quick start below — every value is as the source published it (emails masked, long text shortened):
| case_number | worksite_county | worksite_bls_area | soc_code | min_wage_source | quarter_to_date |
|---|---|---|---|---|---|
| P-100-25024-640971 | MENDOCINO COUNTY | NORTH COAST REGION OF CALIFORNIA NONMETROPOLITAN AREA | 51-1011; 51-1011 | OEWS (All Industries) | FY2026 Q3 |
| P-100-25030-654942 | NEW YORK COUNTY | NEW YORK-NEWARK-JERSEY CITY, NY-NJ | 11-9041; 13-1082 | OEWS (All Industries) | FY2026 Q3 |
| P-100-25031-659039 | DALLAS COUNTY | DALLAS-FORT WORTH-ARLINGTON, TX | 15-1252; 15-1252 | OEWS (All Industries) | FY2026 Q3 |
| P-100-25031-659049 | DALLAS COUNTY | DALLAS-FORT WORTH-ARLINGTON, TX | 15-1252; 15-1252 | OEWS (All Industries) | FY2026 Q3 |
| P-100-25034-661058 | DALLAS COUNTY | DALLAS-FORT WORTH-ARLINGTON, TX | 15-1252; 15-1252 | OEWS (All Industries) | FY2026 Q3 |
| P-100-25034-662021 | COLLIN COUNTY | DALLAS-FORT WORTH-ARLINGTON, TX | 15-1252; 15-1252 | OEWS (All Industries) | FY2026 Q3 |
| P-100-25034-662207 | MIDDLESEX COUNTY | NEW YORK-NEWARK-JERSEY CITY, NY-NJ | 15-1253; 15-1253 | OEWS (All Industries) | FY2026 Q3 |
| P-100-25034-662273 | DANIELS COUNTY | EAST-CENTRAL MONTANA NONMETROPOLITAN AREA | 47-4051; 37-3011 | OEWS (All Industries) | FY2026 Q3 |
The run finished with the status message: NORMAL: 50 unique rows (0 duplicates collapsed) from Fri, 07 Aug 2026 16:25:30 GMT. billable=50
✅ What you get
Each row is flat JSON with these fields (from the dataset schema and the sample run; a field the source does not publish for a given row is null):
record_type(string/null) — e.g.wage_worksite_recordsource(string/null) — e.g.dol-prevailing-wage-worksitesprogram(string/null) — e.g.PWcase_number(string/null) — e.g.P-100-25024-640971worksite_county(string/null) — e.g.MENDOCINO COUNTYworksite_state(string/null) — e.g.CALIFORNIAworksite_bls_area(string/null) — e.g.NORTH COAST REGION OF CALIFORNIA NONMETROPOLITAN AREAsoc_code(string/null) — e.g.51-1011; 51-1011soc_title(string/null) — e.g.First-Line Supervisors of Production and Operating Workers; First-Line Supervisomin_wage_source(string/null) — e.g.OEWS (All Industries)min_prevailing_wage(number/string/null) — e.g.103314min_wage_unit(string/null) — e.g.Yearalt_wage_source(string/null) — e.g.OEWS (All Industries)alt_prevailing_wage(number/string/null) — e.g.134971alt_wage_unit(string/null) — e.g.Yearnatural_grain(string/null) — e.g.P-100-25024-640971 | MENDOCINO COUNTY | CALIFORNIA | NORTH COAST REGION OF CALIFrecord_key(string/null) — e.g.472e27ca71a5d992f5250e19e9179f18quarter_to_date(string/null) — e.g.FY2026 Q3source_attribution(string/null) — e.g.U.S. Department of Labor, Office of Foreign Labor Certificationchanges_indicated(string/null) — e.g.reformatted from the DOL OFLC disclosure workbook to JSON; values unmodified; althird_party_content(string/null) — e.g.none — official U.S. Department of Labor OFLC disclosure data; no third-party riallowlist_note(string/null) — e.g.STRUCTURAL ALLOW-LIST at ingest: worksite geography (county/state/BLS area — coaworksite_note(string/null) — e.g.WORKSITE-LEVEL detail of the OFLC prevailing-wage determinations — one row per wgrain_note(string/null) — e.g.CASE_NUMBER is NOT unique — one determination case has many worksites. The recorquarter_to_date_note(string/null) — e.g.FY2026 Q3 QUARTER-TO-DATE living workbook — a moving cut refreshed through the qsource_url(string/null) — e.g.https://www.dol.gov/sites/dolgov/files/ETA/oflc/pdfs/FY26Q3/PW_Worksites_FY2026_release_date(string/null) — e.g.Fri, 07 Aug 2026 16:25:30 GMTobserved_at(string/null) — e.g.2026-09-19T18:19:44Zrelease_checksum(string/null) — e.g.6a7606fa-37d26alicense(string/null) — e.g.U.S. public domain — a work of the U.S. Government (17 U.S.C. sec.105). U.S. Depattribution(string/null) — e.g.U.S. Department of Labor, Office of Foreign Labor Certification (https://www.dol
What a record is
One wage_worksite_record per worksite of a prevailing-wage determination case: the case identifier
(case_number), the worksite geography (worksite_county, worksite_state, worksite_bls_area — coarse), the
SOC occupation (soc_code, soc_title), and the per-worksite minimum and alternate prevailing-wage
facts (min_wage_source / min_prevailing_wage / min_wage_unit, alt_wage_source / alt_prevailing_wage /
alt_wage_unit).
⚙️ Sample inputs
1. Quick start — the Store example (this is what the sample above came from)
{"maxRecords": 50}
The sample run charged exactly: 2 × $0.02 apify-actor-start + 50 × $0.02 wage_worksite_record = $1.04 on the Free tier — every delivered row was billed.
2. A smaller, narrowed run
{"maxRecords": 5}
Caps the run at 5 rows — about $0.12 on the Free tier ($0.02 start + 5 × $0.02).
3. A full-size run
{"maxRecords": 2500}
Up to 2500 rows (the schema default for maxRecords) — about $50.02 on the Free tier ($0.02 start + 2500 × $0.02) if the source has that many.
🧾 JSON sample record
One real record from run jRPFAfShaWbzshtf3, exactly as it lands in the dataset (emails masked, long text shortened):
{"record_type": "wage_worksite_record","source": "dol-prevailing-wage-worksites","program": "PW","case_number": "P-100-25024-640971","worksite_county": "MENDOCINO COUNTY","worksite_state": "CALIFORNIA","worksite_bls_area": "NORTH COAST REGION OF CALIFORNIA NONMETROPOLITAN AREA","soc_code": "51-1011; 51-1011","soc_title": "First-Line Supervisors of Production and Operating Workers; First-Line Supervisors of Production and Operating Workers","min_wage_source": "OEWS (All Industries)","min_prevailing_wage": 103314,"min_wage_unit": "Year","alt_wage_source": null,"alt_prevailing_wage": null,"alt_wage_unit": null,"natural_grain": "P-100-25024-640971 | MENDOCINO COUNTY | CALIFORNIA | NORTH COAST REGION OF CALIFORNIA NONMETROPOLITAN AREA | 51-1011; 51-1011 | First-Line Supervisors of Production and Operating Workers; First-Line Supervisors of Production and Operating W","record_key": "472e27ca71a5d992f5250e19e9179f18","quarter_to_date": "FY2026 Q3","source_attribution": "U.S. Department of Labor, Office of Foreign Labor Certification","changes_indicated": "reformatted from the DOL OFLC disclosure workbook to JSON; values unmodified; allow-listed structural columns only","third_party_content": "none — official U.S. Department of Labor OFLC disclosure data; no third-party rights/trademarks/logos","allowlist_note": "STRUCTURAL ALLOW-LIST at ingest: worksite geography (county/state/BLS area — coarse), occupation (SOC) and per-worksite prevailing-wage facts (min/alt source, wage, unit) ONLY. The workbook carries no person, contact, street or narrative co","worksite_note": "WORKSITE-LEVEL detail of the OFLC prevailing-wage determinations — one row per worksite of a determination case, with that worksite's SOC occupation and per-worksite minimum/alternate prevailing wage. Distinct from the determination CASE ma","grain_note": "CASE_NUMBER is NOT unique — one determination case has many worksites. The record key is a FULL-ROW MD5 over the emitted natural grain (case, worksite geography, SOC, min/alt prevailing-wage facts); exact-duplicate worksite rows collapse an","quarter_to_date_note": "FY2026 Q3 QUARTER-TO-DATE living workbook — a moving cut refreshed through the quarter, not a final annual file; vintage = source ETag + Last-Modified carried on the run_receipt.","source_url": "https://www.dol.gov/sites/dolgov/files/ETA/oflc/pdfs/FY26Q3/PW_Worksites_FY2026_Q3.xlsx","release_date": "Fri, 07 Aug 2026 16:25:30 GMT","observed_at": "2026-09-19T18:19:44Z","release_checksum": "6a7606fa-37d26a","license": "U.S. public domain — a work of the U.S. Government (17 U.S.C. sec.105). U.S. Department of Labor, Office of Foreign Labor Certification disclosure data: used, reproduced and distributed without permission and credited to the U.S. Department","attribution": "U.S. Department of Labor, Office of Foreign Labor Certification (https://www.dol.gov/) — public domain"}
🔧 How it works
Transport. Plain HTTPS from the Apify platform, no proxy. robots.txt is read first and a disallowed path is never fetched. Every request carries an identified contact User-Agent. Pacing: CRAWL_DELAY=0.0.
Terminal states. A run ends NORMAL, CAPPED (your cap was reached), PARTIAL (something was withheld and the message says what), GENUINE_EMPTY (the source was read and truly had nothing in scope) or BLOCKED (the source refused or changed shape — the run FAILS loud and bills nothing). A zero-row run is never reported as a silent success.
Charging. Each wage worksite record is charged at the moment it is pushed (wage_worksite_record); a row that fails to charge is not delivered, so the dataset count always equals the charged count.
Worksite-level detail — not the determination case master
This is the per-worksite detail: one row per worksite of a determination case, with that worksite's SOC and
prevailing wage. It is distinct from the determination case master
(dol-prevailing-wage-determinations — one row per case, the ETA-9141 determination with employer, visa class, and
primary worksite). This worksite file carries no employer identity and no street address — worksite geography is
county / state / BLS area only. The two are never conflated. A worksite_note records this on every record.
A full-row key — one case has many worksites
CASE_NUMBER is not unique: a single determination case lists many worksites (about 19,784 cases across
83,288 worksite rows). The record key is a full-row MD5 over the emitted natural grain — case, worksite
geography, SOC, and min/alt prevailing-wage facts — and exact-duplicate worksite rows collapse and are never
billed twice. The readable natural_grain is carried alongside the key.
Structural allow-list at ingest
The workbook carries only worksite geography (county/state/BLS area — coarse), occupation (SOC), and per-worksite prevailing-wage facts; there is no person, contact, street, or narrative column. The structural allow-list is still enforced: only the columns above are copied, so any column DOL might add later (a street, a name) is dropped at ingest by construction. A test injects a street/contact column and asserts it never reaches output, and a live check confirms it.
Quarter-to-date — a living workbook, not a final file
This is the FY2026 Q3 quarter-to-date workbook: a moving cut refreshed through the quarter, not a final
annual file. A quarter_to_date label rides every record and the run receipt carries the source ETag and
Last-Modified as the vintage. Blank padding rows are skipped and never billed (non-empty-row law).
Door
Only the official DOL OFLC bulk worksite workbook on www.dol.gov (under /sites/dolgov/files/ETA/oflc) is read
(public, logged-out, no API key). No implied DOL affiliation or endorsement.
Source & licence
U.S. public domain — a work of the U.S. Government (17 U.S.C. sec.105). U.S. Department of Labor, Office of Foreign Labor Certification disclosure data: used, reproduced and distributed without permission and credited to the U.S. Department of Labor (https://www.dol.gov/); no implied DOL affiliation or endorsement; third-party rights/trademarks/logos excluded. https://www.dol.gov/agencies/eta/foreign-labor/performance
What is not done. No login, no cookie or CAPTCHA bypass, no private or personal-account data, no browser automation.
💰 Pricing example
| Event | Free | Bronze | Silver | Gold |
|---|---|---|---|---|
Actor Start (apify-actor-start) | $0.02 | $0.02 | $0.02 | $0.02 |
Wage worksite record (wage_worksite_record) | $0.02 | $0.02 | $0.02 | $0.01 |
Worked at the live Free-tier price:
- 8 wage worksite records: $0.02 start + 8 × $0.02 = $0.18
- 25 wage worksite records: $0.02 start + 25 × $0.02 = $0.52
- 2500 wage worksite records: $0.02 start + 2500 × $0.02 = $50.02
A run that delivers zero rows charges the $0.02 start fee only. A BLOCKED run (source refused) fails loud and charges no value event. The start fee is charged once per GB of run memory; the default run memory is 4096 MB.
Yield on the sample run: NORMAL: 50 unique rows (0 duplicates collapsed) from Fri, 07 Aug 2026 16:25:30 GMT. billable=50. maxRecords is a hard ceiling on what is delivered and billed, never a target.
⚖️ Legal & ToS
This actor reads public, logged-out pages and feeds published by www.dol.gov. It collects only what the source publishes to any visitor, keeps to the source's robots rules (checked on every run), identifies itself with a contact User-Agent, and does not access accounts, private data or anything behind authentication. Use the output in line with the source's terms and your local law; the intended use is B2B research and monitoring.
❓ FAQ
Q: Do I need an API key or a login?
A: No. The source (www.dol.gov) is read logged-out; the input schema has no key field and the actor carries no secrets.
Q: Why did my run return 0 rows?
A: Read the run's status message. GENUINE_EMPTY means the source was read and had nothing in scope for your input; BLOCKED means the source refused and the run failed without billing a value event — retry later or narrow the input. A zero-row run bills the start fee only.
Q: How many rows can one run return?
A: Up to maxRecords (default 2500). Raise the cap for a bigger run; you pay per delivered row.
Q: How fresh is the data?
A: Every run reads the source live at run time; nothing is cached between runs. Put it on a schedule for a continuous feed.
Q: What formats can I export?
A: The dataset downloads as JSON, CSV, Excel, XML or RSS from the run's Dataset tab or the Apify API, and any run can push to a webhook or integration.
Q: How is this different from the other NexGen Watch actors actors?
A: Same output shape and billing model; this one covers www.dol.gov. The siblings under Related Actors cover the other sources or slices — run several on one schedule for a combined feed.
Q: Are there rate limits?
A: The actor paces itself against the source (CRAWL_DELAY=0.0) and honours its robots rules; there is no per-buyer limit beyond your Apify plan's concurrency.
🆘 Troubleshooting
- Run FAILED with BLOCKED → the source refused the request or changed its page shape → nothing was billed beyond the start fee; retry after a while, and if it persists open an Issue with the run id.
- Status says CAPPED → your cap (
maxRecords) was reached → raise it for a bigger run. - Input validation error on start → a field is outside the schema's allowed values → start from the Quick start block and change one field at a time.
- Run TIMED-OUT → a very wide request on a slow day → raise the run timeout in Run options or narrow the input; what was delivered before the timeout is still in the dataset.
🔗 Related Actors
- DC Basic Business Licenses — One structured registryrecord per record from the official public source, logged-out. Public, robots-honoured
- DOL PERM Green-Card Filings (FY2026 Q3, quarter-to-date) — same family, different source
- DOL Prevailing-Wage Determinations (FY2026 Q3, quarter-to-date) — same family, different source
- ECB Bank (MFI) Balance Sheet Statistics — same family, different source
- ECB Bank Interest Rate Statistics (MIR) — same family, different source
- ECB Bank Lending Survey (BLS) — same family, different source
- 🏢 About NexGenData — NexGen Watch is NexGenData's fleet of 256 public monitoring and lookup actors built on official sources, pay-per-result. Browse the catalog at apify.com/nexgenwatch.
⭐ Found this useful?
If this actor saved you a manual check, a quick review on the Apify Store helps other teams find it. Feature request or a source that changed? Open it from the Issues tab — every one is read.
