Skip to content
← All datasets

H-2A Wage Offers

Average hourly wage offered on the H-2A farmworker positions the Labor Department certified for Georgia worksites each fiscal year, by county and occupation.

Year coverage
2020–2026
Updated
quarterly
Version
1.0.0
Schema hash
2f5462491a59

Detail levels available

State · defaultCounty

Overview

The average hourly wage employers offered on the H-2A temporary agricultural positions DOL's Office of Foreign Labor Certification certified for Georgia worksites, by federal fiscal year, weighted by positions certified: statewide by occupation (SOC) and by the county of the application's first worksite, with the positions and applications behind each average. The same applications as h2a_certifications, which counts the positions. From OFLC's H-2A program disclosure data, FY2020 through the third quarter of FY2026.

Row grain: One row per year, county_fips, soc_occupation.

Key metric

avg_hourly_wage_offer — Average Hourly Wage Offer (H-2A) (currency)

The single headline value most answers want.

Variables

Every column in the fact table. The code is the exact field name the API returns.

ColumnTypeUnitRangeNull?Description
yearYearinteger——noFederal fiscal year (October 1 - September 30) of DOL's final determination on the application, NOT the calendar year. FY2020-FY2026; FY2026 is partial (decisions through June 30, 2026).
Full description
Federal fiscal year (October 1 - September 30) of DOL's final determination on the application, NOT the calendar year. FY2020-FY2026; FY2026 is partial (decisions through June 30, 2026).
county_fipsCounty FIPSstring——yes5-digit FIPS of the county of the application's first worksite. NULL on statewide rows. County placement follows h2a_certifications; the counts in the next sentences are that topic's, over all of its Georgia applications of every case status. Where the worksite street address geocodes with certainty to another county and a second sign agrees (DOL's county holds under 5% of the worksite ZIP's residents, or the address lies at least 500 m from DOL's county in a county holding some of the ZIP's residents), the address's county replaces DOL's (98 applications); it also fills 58 counties DOL left blank. Where DOL's stated county is impossible for the worksite ZIP code (none of the ZIP's 2020 population lives there), it is replaced by the ZIP's county only when certain - at least 99% of the ZIP in that county and the city confirming the ZIP (14 applications); 66 applications that fail the test keep DOL's county (see h2a_certifications' limitations). Of the applications in this table, the address replaced DOL's county on 82 applications and the ZIP rule on 14 applications; 63 applications failing the ZIP test keep DOL's county. A county DOL left blank is filled from the address or, failing that, the ZIP's population-dominant county; one neither can place counts in the statewide rows only.
Full description
5-digit FIPS of the county of the application's first worksite. NULL on statewide rows. County placement follows h2a_certifications; the counts in the next sentences are that topic's, over all of its Georgia applications of every case status. Where the worksite street address geocodes with certainty to another county and a second sign agrees (DOL's county holds under 5% of the worksite ZIP's residents, or the address lies at least 500 m from DOL's county in a county holding some of the ZIP's residents), the address's county replaces DOL's (98 applications); it also fills 58 counties DOL left blank. Where DOL's stated county is impossible for the worksite ZIP code (none of the ZIP's 2020 population lives there), it is replaced by the ZIP's county only when certain - at least 99% of the ZIP in that county and the city confirming the ZIP (14 applications); 66 applications that fail the test keep DOL's county (see h2a_certifications' limitations). Of the applications in this table, the address replaced DOL's county on 82 applications and the ZIP rule on 14 applications; 63 applications failing the ZIP test keep DOL's county. A county DOL left blank is filled from the address or, failing that, the ZIP's population-dominant county; one neither can place counts in the statewide rows only.

Joins counties; adds its label columns.

soc_occupationOccupationstring——noOccupation (SOC) of the job: top five, other, all.
Full description
Occupation of the job order (Standard Occupational Classification): 'crop_nursery_greenhouse_farmworkers' = SOC 45-2092 Farmworkers and Laborers, Crop, Nursery, and Greenhouse; 'agricultural_equipment_operators' = SOC 45-2091 Agricultural Equipment Operators; 'farm_ranch_animal_farmworkers' = SOC 45-2093 Farmworkers, Farm, Ranch, and Aquacultural Animals; 'farm_labor_contractors' = SOC 13-1074 Farm Labor Contractors; 'heavy_tractor_trailer_truck_drivers' = SOC 53-3032 Heavy and Tractor-Trailer Truck Drivers; 'other' = every other occupation; 'all' = every occupation. The same five named occupations as h2a_certifications. Statewide rows only; county rows are 'all'.
7 allowed values
  • all — total / aggregate
  • crop_nursery_greenhouse_farmworkers
  • agricultural_equipment_operators
  • farm_ranch_animal_farmworkers
  • farm_labor_contractors
  • heavy_tractor_trailer_truck_drivers
  • other
avg_hourly_wage_offerAverage Hourly Wage Offer (H-2A)numbercurrency—yesAverage hourly wage offered on certified H-2A positions, in dollars.
Full description
Average hourly wage (US dollars) offered on the job orders of the H-2A positions DOL certified in the fiscal year (WAGE_OFFER where PER = 'Hour'), weighted by positions certified and rounded to the cent. At least the Adverse Effect Wage Rate by rule, so it largely tracks Georgia's AEWR; an offer, not earnings (no piece rates or overtime). Never sum or average across rows: a county or occupation average is not additive.
num_positions_with_wagePositions in the Averageintegercount—yesCertified H-2A positions paid by the hour - the average's N.
Full description
Number of H-2A positions certified in the fiscal year on job orders paid by the hour - the N the average is taken over. Equals h2a_certifications' num_positions_certified minus the positions on job orders paid per month.
num_applications_with_wageApplications in the Averageintegercount—yesCertified H-2A applications paid by the hour behind the average.
Full description
Number of distinct H-2A applications (job orders) behind the average: those with at least one certified position and an hourly wage offer. A small number means the average reflects few employers.

Filters

Query parameters the fact endpoint accepts. Comma-separated values are OR within a parameter; multiple parameters AND together.

ParameterKindAllowed valuesNotes
yearyear_exactany value—
year_minyear_rangeany value—
year_maxyear_rangeany value—
detaildetailcountiesstatesenum-enforced, default: states
county_fipsforeign_keyany valuemulti-value
soc_occupationcategorical
7 allowed values
  • all
  • crop_nursery_greenhouse_farmworkers
  • agricultural_equipment_operators
  • farm_ranch_animal_farmworkers
  • farm_labor_contractors
  • heavy_tractor_trailer_truck_drivers
  • other
multi-value, enum-enforced

Example requests

Run these against the base URL — they return live data.

All rows (first page), states level

curl "https://georgiacivicdata.org/api/v1/immigration/h2a_wage_offers"

states data for 2026

curl "https://georgiacivicdata.org/api/v1/immigration/h2a_wage_offers?year=2026"

Filtered to soc_occupation = crop_nursery_greenhouse_farmworkers for 2026

curl "https://georgiacivicdata.org/api/v1/immigration/h2a_wage_offers?year=2026&soc_occupation=crop_nursery_greenhouse_farmworkers"

One county (FIPS 13071), 2026

curl "https://georgiacivicdata.org/api/v1/immigration/h2a_wage_offers?county_fips=13071&year=2026&detail=counties"

Download 2026 as CSV

curl "https://georgiacivicdata.org/api/v1/immigration/h2a_wage_offers?year=2026&format=csv"

Notes & limitations

NULL handling

  • Zero is a real, reported value.

Limitations

Federal fiscal years (October 1 - September 30), not calendar years: `year` is the fiscal year of DOL's final determination on the application. FY2026 is PARTIAL: decisions through June 30, 2026 only (DOL's Q3 file); do not compare it with complete years. Measured on the complete years FY2020-FY2025, the average over decisions from October through the same end date ran $0.00 to $0.05 below the full-year average (at or below it every year), so FY2026's partial figure likely reads low by about that much. What the wage is: the hourly wage the employer offered on the H-2A job order (WAGE_OFFER, Form ETA-790A item A.8b), which must be at least the Adverse Effect Wage Rate (AEWR) DOL sets for the occupation and state - so the Georgia average largely tracks Georgia's AEWR. It is an offer, not earnings: piece-rate pay, overtime and hours actually worked are not in it. The average is weighted by positions certified - each application's offer counts once per certified position - and covers every Georgia application DOL certified at least one position on (the positions h2a_certifications counts), except those paid per another unit. Georgia averages: FY2020 $11.66; FY2021 $11.76; FY2022 $12.00; FY2023 $13.52; FY2024 $14.63; FY2025 $16.01; FY2026 $12.75. FY2026 is not comparable with earlier years for a second reason: DOL's October 2, 2025 interim final rule replaced the AEWR methodology (occupation- and skill-level rates from BLS OEWS wages, replacing the USDA Farm Labor Survey) for job orders filed from that date (Congressional Research Service, https://www.congress.gov/crs-product/IF12408); Georgia's FY2026 offers include lower rates than FY2025's. Excluded: job orders whose wage is stated per month - FY2020 1 application (6 positions); FY2021 1 application (6 positions); FY2022 1 application (6 positions); FY2023 1 application (4 positions); FY2024 6 applications (863 positions); FY2025 3 applications (42 positions); FY2026 7 applications (568 positions). 6 of them are livestock jobs (SOC 45-2093) paid a genuine monthly wage ($1,682.33-$2,058.31 a month); the other 14 (1,463 positions, all from FY2024 on) state an hourly rate ($12.27-$16.08, at or near the AEWR) under 'Month' - an evident unit slip - and are excluded rather than reinterpreted. Positions averaged plus positions excluded equal DOL's published Georgia positions certified in every year. An hourly offer below the $7.25 federal minimum wage would be excluded as impossible; none exists. Geography is the application's FIRST worksite, placed exactly as in h2a_certifications (DOL's county, corrected from the geocoded street address where certain, then by the certain-only ZIP rule; blank counties from the address or the ZIP's population-dominant county) - see that topic's limitations for the counts and risks. Applications with no placeable county count in the state rows only (FY2025: 99 positions on 1 application), so county positions sum to fewer than the state's in those years. `soc_occupation` uses h2a_certifications' five named occupations (the five with the most Georgia positions certified) and 'other'; county rows are totals ('all'). A county or occupation average may rest on a single employer's job order - read it with num_applications_with_wage. No suppression: rows are job orders, not people, and DOL publishes each offer with the employer's name. An average is NULL only where no certified hourly position exists.