Not a California state website. An independent project built from public data.
Afterward · CA

California training programs, and what happened to the people who took them

Español (inicio)

Back to search

How complete California's training outcomes data is

Every program on California's Eligible Training Provider List is reported to the federal government, and that federal report is where the outcome figures live. This page counts how much of it is filled in: measure by measure, provider category by provider category, and against the size of the group each figure is meant to describe.

California publishes its Eligible Training Provider List only as a search screen inside CalJOBS. There is no file to download, and no published count of how many listed programs carry outcome data. So a person choosing between two programs, and an agency deciding where a reporting effort would do the most good, are both working without that number. The federal scorecard is the same programs under a different cover, and it can be counted, so this page counts it and shows the working.

This measures a public record. It does not assess any provider, college, or agency. A blank cell here is a fact about how workforce data is collected and about which providers are required to file what. It is not evidence that a program is poor, that a provider withheld something it owed, or that anyone failed at anything.

California programs in the federal record
3,266
Publish no outcome measure at all
1,209 of 3,266
Of those, filed no cohort count either
1,167 of 1,209

Federal ETP Scorecard, program years 2021 to 2024, read on 2026-09-18.

1,209 of 3,266 California programs publish no completion rate, no employment rate, and no median earnings figure. Those split two ways that matter. Of them, 42 filed a count of the people they served, exited, or completed, so a record exists and the outcome cells on it are empty. The remaining 1,167 filed no performance figures of any kind, so there is no record to have cells in.

Both are gaps, and they are not the same gap. One is a measure that was not published beside a group that was; the other is a program about which the federal record says nothing. A fix for the first is a reporting rule. A fix for the second is a data pipeline.

That program-year window is not in the data. No record the scorecard publishes carries a program-year or reporting-period field of any kind, on either of its indexes. The window comes from a sentence on the scorecard's own About page, read there on 2026-08-07, and the data dictionary published alongside the same data still names an earlier program year, so the source does not agree with itself. A refresh upstream can move the window without anything on this page noticing, which is why the date this project read the record sits beside every figure below.

On this page

What is filled in, measure by measure

Every outcome measure the scorecard carries for a program, and how many of California's programs publish each one. Nothing here is derived, combined, or estimated: these are the columns the feed has.

MeasurePublishedBlank beside a filed cohortNo performance recordNot published
People served2,09901,1671,167 of 3,266 (36%)
People who left the program2,084151,1671,182 of 3,266 (36%)
People who completed2,047521,1671,219 of 3,266 (37%)
Completion rate2,047521,1671,219 of 3,266 (37%)
Credentials earned1,8002991,1671,466 of 3,266 (45%)
Employed two quarters after leaving (count)1,7663331,1671,500 of 3,266 (46%)
Employment rate two quarters after leaving1,7603391,1671,506 of 3,266 (46%)
Employed four quarters after leaving (count)1,7373621,1671,529 of 3,266 (47%)
Median earnings in the second quarter after leaving1,3847151,1671,882 of 3,266 (58%)

Federal ETP Scorecard, program years 2021 to 2024, read on 2026-09-18.

The employment count and the employment rate are separate filings, and the count is not the rate's numerator. The rate is divided by a differently scoped group of leavers that this feed does not publish, so those two rows move independently and neither can be rebuilt from the other.

The table divides along a line that has nothing to do with any provider. The counts of who was served, who left, who finished and who earned a credential are the training provider's to supply. The employment and earnings figures are produced by the state, by matching the provider's roster against unemployment-insurance wage records. In this snapshot the two groups do not overlap at all: the least-published measure the provider supplies, Credentials earned, is filled in for 1,800 programs, and the most-published measure the wage match produces, Employed two quarters after leaving (count), for 1,766. Every measure that has to survive a records match is published less often than every measure that does not.

That is a description of the published data, not an explanation of it, and it is not a claim that the match is done badly. It does locate the gap: for most of these programs the reporting relationship exists and is working, and the measures going missing are the ones that depend on two systems finding the same person.

By the category the provider filed under

The category below is the provider's own, as filed in the federal record. It is not a clean map of California's training system: in this snapshot community colleges appear under both Public and Higher Ed: Associate's Degree, and adult schools, regional occupational programs, and county offices of education all arrive as Public. It is reported as filed rather than re-sorted, because re-sorting it would mean inventing a classification here and then measuring the invention.

Category as filedProgramsPublish at least one measurePublish noneShare publishing none
Public1,18891327523%
Private For-Profit78756022729%
Higher Ed: Associate's Degree60917943071%
Higher Ed: Baccalaureate or Higher1621431912%
National Apprenticeship1602313786%
Higher Ed: Certificate of Completion156995737%
Private Non-Profit130824837%
Other74581622%

Federal ETP Scorecard, program years 2021 to 2024, read on 2026-09-18.

Rows are ordered by how many programs each category holds, not by how much each leaves blank. Ordering by the blank rate would publish a league table of who reports least, and the categories at the top of it would be the ones with the most distinct reporting obligations, which is the opposite of what the numbers show.

Not every provider owes the same report

A blank row is only readable against what its filer was actually required to file, and that is not the same for everyone on the list. Four differences do real work in the tables above, and none of them is a provider choosing to say nothing.

In this snapshot the two categories leaving the most rows empty are National Apprenticeship and Higher Ed: Associate's Degree. The first is the one the regulation above makes voluntary rather than required. For the second, and for every other row in that table, this page cannot tell you which of these explanations applies to any particular program, or whether any of them does. Reading that column as a ranking of diligence would get the direction of the finding backwards.

The primary texts below, federal and state, are published in English only.

Blank cells against the size of the group

If small-group suppression is what is behind an empty cell, the blank rate should fall as the group grows. That is a prediction the data can be asked about, and asking it is the only way this page can say anything about why a cell is empty without inventing a reason.

People who left the programProgramsCompletion rateEmployment rate two quarters after leavingMedian earnings in the second quarter after leaving
1 to 1011711 of 117 (9%)55 of 117 (47%)70 of 117 (60%)
11 to 2529417 of 294 (6%)70 of 294 (24%)117 of 294 (40%)
26 to 503302 of 330 (1%)48 of 330 (15%)115 of 330 (35%)
51 to 1003750 of 375 (0%)42 of 375 (11%)103 of 375 (27%)
101 to 2505040 of 504 (0%)51 of 504 (10%)146 of 504 (29%)
251 or more3610 of 361 (0%)25 of 361 (7%)91 of 361 (25%)

Federal ETP Scorecard, program years 2021 to 2024, read on 2026-09-18.

Completion and employment behave the way small-group suppression predicts: the blank rate is highest in the smallest groups and falls as the groups grow. Earnings does not fall to meet them. It stays the least published measure in every band, including the largest, where group size can no longer be the explanation. Whatever is keeping the earnings column empty in large programs is something other than protecting a small group.

Only cohorts a provider filed against a single program are counted here. A provider that filed one cohort covering a whole institution would land in the largest band while describing a population that is not one program. Programs that filed no exit count appear in no band at all, because an unstated group size is not a small group.

Where the silence sits

144 of the 581 providers named in this record publish nothing for any program they filed, covering 278 programs between them. Every other program with an empty row belongs to a provider that did publish something somewhere, which is worth knowing: for most of the gap, the reporting relationship exists and a particular measure is missing from it.

Federal ETP Scorecard, program years 2021 to 2024, read on 2026-09-18.

Browse all providers

How this page counts

The source is the U.S. Department of Labor's Eligible Training Provider scorecard, the WIOA ETA-9171 performance report that states file and the Department publishes. California's programs are read from it whole, with no sampling and no exclusions. Every figure on this page is a count taken over that record at build time, and none is typed into the text.

What a blank means, precisely

The scorecard writes a single sentinel value wherever a measure has no figure, and its own data dictionary says that one value covers three different situations: a group too small to publish without identifying somebody in it, no data reported for the program at all, and data the Department found significant quality problems in. One sentinel, three causes, and no way to tell them apart from outside. So this page does not separate them, and any page that claims to has invented the distinction. What the record can support is a different and narrower split: whether it described a group at all.

Published means the measure carries a figure. Blank beside a filed cohort means the record states how many people were served, left, or completed, and leaves this particular measure empty. No performance record means the record states neither, so nothing about outcomes was filed for that program in any form.

There is also no published number behind the first of those three. The rule is a standard rather than a threshold: disaggregated data is not required where the count is too small to be statistically reliable or where publishing it would reveal something about an individual participant. No minimum cell size appears in the reporting guidance, the form instructions, or the data dictionary, so this page states no threshold either, and the cohort-size table above is a description of what the published data does rather than a reconstruction of a rule.

A masked figure is not a zero

Nothing on this page adds, averages, ranks, or renders a missing measure as if it were zero. A withheld completion rate is not a completion rate of nought, and a program with an empty row has not scored badly, it has not been scored. Where a genuine reported zero exists in this data it is treated as the real and serious finding it is, and kept visibly apart from an empty cell.

When a share is withheld

A percentage is published only where at least 30 records sit behind it. Below that a single record moves the answer by more than three points, which is more precision than the denominator can carry, so the counts are published and the share is left out. That is the same rule this project applies to every figure it cannot stand behind.

What this page does not claim

It does not claim that California's own Eligible Training Provider List holds the same programs as the federal file. The state publishes no export to check that against, which is the gap this whole page sits in. It does not claim to know why any individual cell is empty. It does not rank providers, categories, or agencies, and it draws no conclusion about the quality of any program from the presence or absence of a figure about it. And the program-year window beside every figure is quoted from the scorecard's About page rather than measured from the data, because the data carries no such field: if that sentence changes upstream, this page will not notice on its own.

The dataset behind this page is rebuilt from the public sources by a documented pipeline, and the counting is done by a tested module rather than by hand. Anyone can reproduce it.

Read the provenance file

Citing or correcting this page

If you are quoting a figure from this page, quote the read date with it: the underlying record was read on 2026-09-18, and the scorecard is refreshed periodically, so a figure here can be behind the source without either being wrong. This page is a stable address and will keep answering the same question as the data underneath it changes.

If you work on this data and something here is misread, the correction is welcome and will be made. That includes the reporting obligations described above: they are the part of this page least visible in the data itself and most easily got wrong from outside.

Open an issue about a figure on this site

How this site gets its figures, and what they do not tell you