Reference Source

State construction apprentice-to-journeyman ratio requirements by trade

Apprentice-to-journeyman ratio requirements for construction trades in each US state. Each record is one state and one trade or program, giving the initial ratio (how many journeymen for the first apprentice), the ratio thereafter (how many additional journeymen per additional apprentice), and whether it applies to public works, private, or both. Answers 'what is the apprentice-to-journeyman ratio for [trade] in [state]' and 'how many journeymen do I need before I can hire another apprentice on this job'. Ratios vary widely, and states structure them differently: some (MN) delegate to individual JATC programs, each with its own ratio; others (CA) set a state-wide hourly ratio on public works with trade-specific exemptions.

Records43
Sources2
Verified
Review by
LicenceFacts from state labor department pages and apprenticeship regulations; ratio requirements are not copyrightable

The data

StateTrade or programInitial ratioThereafter ratioScopeComputation basisStatute citation
CaliforniaCalifornia Apprenticeship Council (default)one apprentice hour for every five journeyman hoursone apprentice hour for every five journeyman hourspublic workshourlyLabor Code 1777.5 (g)
CaliforniaLaborers – Northern Californianot required to hire an apprentice until there are four journeymen on the jobsitepublic worksLabor Code 1777.5 (g)
CaliforniaLaborers – Southern Californianot required to hire an apprentice until there are four journeymen on the jobsitepublic worksLabor Code 1777.5 (g)
CaliforniaOperating Engineers – Northern Californianot less than one apprentice for each four journeymennot less than one apprentice for each four journeymenpublic worksLabor Code 1777.5 (g)
CaliforniaOperating Engineers – Southern Californianot less than one apprentice for each five journeymennot less than one apprentice for each five journeymenpublic worksLabor Code 1777.5 (g)
CaliforniaTeamsters – Southern Californianot less than one apprentice for each five journeymennot less than one apprentice for each five journeymenpublic worksLabor Code 1777.5 (g)
MinnesotaCement Masons Local 633 JATCone to oneone to fourMinnesota Statute 178.036
MinnesotaConstruction Craft Laborers JACone to one for the first threeone to threeMinnesota Statute 178.036
MinnesotaDesign Electrictwo to onetwo to oneMinnesota Statute 178.036
MinnesotaElectrical Training Network (ETN)two to onetwo to oneMinnesota Statute 178.036
MinnesotaElevator Constructors Local 9 JACtwo to onethree to two, seven to five and 11 to eightMinnesota Statute 178.036
MinnesotaFTIUM – Glazierstwo to oneone to two for the next three and one to three thereafterMinnesota Statute 178.036
MinnesotaKlein Electrictwo to onetwo to oneMinnesota Statute 178.036
MinnesotaMetro Sheet Metal JATC – Architecturalone to oneMinnesota Statute 178.036
MinnesotaMetro Sheet Metal JATC – Commercialone to three regularly employed journeyworkersMinnesota Statute 178.036
MinnesotaMetro Sheet Metal JATC – Residentialtwo to oneMinnesota Statute 178.036
MinnesotaMetro Sheet Metal JATC – Specialty Kitchenone to oneone to oneMinnesota Statute 178.036
MinnesotaMillwright and Machinery Erectors JACone to oneone to oneMinnesota Statute 178.036
MinnesotaMinneapolis Electrical JATCtwo to onetwo to oneMinnesota Statute 178.036
MinnesotaMinneapolis Plumbers JJATCone to onetwo to four journeyworkers for second apprentice, five to seven journeyworkers for third apprentice, eight to ten journeyworkers for fourth apprenticeMinnesota Statute 178.036
MinnesotaMinneapolis/St. Paul Sprinkler Fitters JACtwo to twoone to threeMinnesota Statute 178.036
MinnesotaMinnesota Apprenticeship Ratio Policyone to onethree to oneheadcountMinnesota Statute 178.036
MinnesotaMinnesota Area Pile Drivers JACone to oneone to oneMinnesota Statute 178.036
MinnesotaMinnesota Chapter of Associated Builders and Contractors – Electricianstwo to onetwo to oneMinnesota Statute 178.036
MinnesotaMinnesota Chapter of Associated Builders and Contractorsone to one for the first threeone to threeMinnesota Statute 178.036
MinnesotaMinnesota Operating Engineers JACone to oneone to fiveMinnesota Statute 178.036
MinnesotaMinnesota Roofing JACthree to onethree to oneMinnesota Statute 178.036
MinnesotaMinnesota Statewide Limited Energy JATCtwo to onetwo to oneMinnesota Statute 178.036
MinnesotaMinnesota Teamsters JACone to onefour to 10Minnesota Statute 178.036
MinnesotaNorthern Mechanical and Iron Range Plumbers and Pipefitters JATCone to oneone to twoMinnesota Statute 178.036
MinnesotaNorthern Minnesota Carpenters JACone to oneone to oneMinnesota Statute 178.036
MinnesotaNorthern Minnesota Millwrights JACone to oneone to oneMinnesota Statute 178.036
MinnesotaRoofers and Waterproofers Local 96 JACone to one three to two four to three six to fourMinnesota Statute 178.036
MinnesotaRoofers and Waterproofers Local 96 JAC (slate and tile)one to twoone to twoMinnesota Statute 178.036
MinnesotaS.E. Minnesota Plumbers and Steamfitters JACone to oneone to twoMinnesota Statute 178.036
MinnesotaSouth Central Minnesota Electrical JATCtwo to onetwo to oneMinnesota Statute 178.036
MinnesotaSt. Paul Electrical JATCtwo to onetwo to oneMinnesota Statute 178.036
MinnesotaSt. Paul Plumbers JACone to onetwo to four journeyworkers for second apprentice, five to seven journeyworkers for third apprentice, eight to ten journeyworkers for fourth apprenticeMinnesota Statute 178.036
MinnesotaTwin Cities Carpenters JATC - HUD exemptiontwo to one; at least one apprentice must have over 4,000 hoursMinnesota Statute 178.036
MinnesotaTwin Cities Carpenters JATC (Metro, Mankato, St. Cloud, Rochester)one to oneone to oneMinnesota Statute 178.036
MinnesotaTwin Cities Floor Coverers JACone to oneone to oneMinnesota Statute 178.036
MinnesotaTwin Cities Ironworkers Local 512one to oneone to fourMinnesota Statute 178.036
MinnesotaTwin Cities Plasterers JATCone to oneone to fourMinnesota Statute 178.036

Where this came from

Every record above links the page it was taken from and quotes the sentence that states it. These are the 2 sources this dataset was assembled from.

Machine-readable

From your own code

Same records, same quotes, without scraping the page: refsource is on PyPI and npm. Each value comes back carrying the URL it was read from and the sentence on that page that states it — .source and .quote sit on the value itself rather than in a side channel, so the checking step is available instead of skipped.

pip install refsource
refsource lookup state-apprenticeship-ratios-by-trade state=California

npx -y refsource lookup state-apprenticeship-ratios-by-trade state=California

Set your AI assistant up to use this

Two files and no account. Put this in .mcp.json at the root of your project — Claude Code, Cursor, Windsurf, VS Code and Codex all read that file — and your assistant can look this dataset up instead of recalling it. The server is remote, keyless and read-only.

{
  "mcpServers": {
    "referencesource": {
      "type": "http",
      "url": "https://referencesource.org/mcp"
    }
  }
}

Add to Cursor · or, on the command line: claude mcp add --transport http referencesource https://referencesource.org/mcp --scope project

Then one line in the project's CLAUDE.md or AGENTS.md, so the assistant knows when to reach for it:

When a question needs "State construction apprentice-to-journeyman ratio requirements by trade", call the referencesource MCP server at https://referencesource.org/mcp (tool `search_records`, dataset_slug `state-apprenticeship-ratios-by-trade`) instead of answering from memory — every record it returns carries its source URL and a verbatim quote from that page.

What each tool does, and the servers built over single registers: Connect your AI assistant.

43 records. last verified against source . due for re-check by .

Licence. Facts from state labor department pages and apprenticeship regulations; ratio requirements are not copyrightable