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.
| Measure | Published | Blank beside a filed cohort | No performance record | Not published |
|---|---|---|---|---|
| People served | 2,099 | 0 | 1,167 | 1,167 of 3,266 (36%) |
| People who left the program | 2,084 | 15 | 1,167 | 1,182 of 3,266 (36%) |
| People who completed | 2,047 | 52 | 1,167 | 1,219 of 3,266 (37%) |
| Completion rate | 2,047 | 52 | 1,167 | 1,219 of 3,266 (37%) |
| Credentials earned | 1,800 | 299 | 1,167 | 1,466 of 3,266 (45%) |
| Employed two quarters after leaving (count) | 1,766 | 333 | 1,167 | 1,500 of 3,266 (46%) |
| Employment rate two quarters after leaving | 1,760 | 339 | 1,167 | 1,506 of 3,266 (46%) |
| Employed four quarters after leaving (count) | 1,737 | 362 | 1,167 | 1,529 of 3,266 (47%) |
| Median earnings in the second quarter after leaving | 1,384 | 715 | 1,167 | 1,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 filed | Programs | Publish at least one measure | Publish none | Share publishing none |
|---|---|---|---|---|
| Public | 1,188 | 913 | 275 | 23% |
| Private For-Profit | 787 | 560 | 227 | 29% |
| Higher Ed: Associate's Degree | 609 | 179 | 430 | 71% |
| Higher Ed: Baccalaureate or Higher | 162 | 143 | 19 | 12% |
| National Apprenticeship | 160 | 23 | 137 | 86% |
| Higher Ed: Certificate of Completion | 156 | 99 | 57 | 37% |
| Private Non-Profit | 130 | 82 | 48 | 37% |
| Other | 74 | 58 | 16 | 22% |
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.
- Registered apprenticeship programs are on the list on different terms from everybody else. They are eligible by virtue of being registered, for as long as they stay registered, so they never go through the initial eligibility process the other providers go through. They are also not required to submit eligible training provider performance information at all, in so many words, and where they do submit it the submission is voluntary. An apprenticeship program with an empty row is doing exactly what the rule asks of it.
- California asks everyone else for it. The state's current eligible training provider directive exempts registered apprenticeship from performance reporting and nobody else, including its community colleges and its public universities. Those institutions reach the list by a different route, on their accreditation or their status as public institutions rather than by meeting the numeric performance thresholds the directive applies to private postsecondary providers, but the reporting duty is the same one everybody else has. So a blank row at a college is not an exemption being used. It is something else, and this page cannot tell you what.
- The scorecard is meant to describe everyone who engaged in a program of study, not only the people whose training the workforce system paid for. Getting from one to the other is a records problem: the provider supplies the roster, and the state produces the employment and earnings figures by matching that roster against its unemployment-insurance wage records. Where that match cannot be made, there is nothing to publish about the people it would have covered, and no filing by the provider would produce it.
- A results cell is withheld when the group behind it is small enough that publishing the figure could identify a person in it. That is a privacy protection working as designed, and it is not distinguishable at source from a cell nobody filled in.
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.
- 20 CFR 677.230(b): registered apprenticeship programs are not required to submit ETP performance information, and (e)(1): the State facilitates the wage-record match
- 20 CFR 680.450(b): apprenticeship programs are exempt from initial eligibility
- 20 CFR 680.490: what providers other than registered apprenticeship programs must provide
- WIOA sec. 116(d)(4), 29 U.S.C. 3141(d)(4): all individuals engaging in the program
- California EDD Workforce Services Directive WSD25-02: California Eligible Training Provider List
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 program | Programs | Completion rate | Employment rate two quarters after leaving | Median earnings in the second quarter after leaving |
|---|---|---|---|---|
| 1 to 10 | 117 | 11 of 117 (9%) | 55 of 117 (47%) | 70 of 117 (60%) |
| 11 to 25 | 294 | 17 of 294 (6%) | 70 of 294 (24%) | 117 of 294 (40%) |
| 26 to 50 | 330 | 2 of 330 (1%) | 48 of 330 (15%) | 115 of 330 (35%) |
| 51 to 100 | 375 | 0 of 375 (0%) | 42 of 375 (11%) | 103 of 375 (27%) |
| 101 to 250 | 504 | 0 of 504 (0%) | 51 of 504 (10%) | 146 of 504 (29%) |
| 251 or more | 361 | 0 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.
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.
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 →