Pandemic Darlings The pandemic economy, in original documents
Home Data downloads PPP processing-fee schedules by vintage

Derived table · PPP

PPP processing-fee schedules by vintage

Program-wide PPP lender processing fees by loan vintage and draw, with the 2020 CARES Act schedule and the 2021 Economic Aid Act schedule each applied to every disbursed loan. Four rows; the actual-schedule column sums to $38.24 billion. These are modeled schedule amounts computed from loan sizes, not a ledger of fees the SBA paid.

Rows4
Columns7
Files1 · 430 B
FormatCSV
Source vintageSBA PPP FOIA 2024-09-30
Published byPandemic Darlings
Acquired / built2026-07-10
Releasepandemic-darlings-data-v1-2026-07-10
Built fromSBA PPP FOIA loan-level files
SHA-256d580579d0bef0d5cee1ca0251c5e63a3e61675fe869cf6a315a958b4d56ed7c2
RightsDerived from U.S. government public data and published fee rules; attribution to Pandemic Darlings requested.
Schema · dictionaryppp-fee-schedules-by-vintage.json · dictionary.csv

Download CSV 430 BData dictionary CSVAt a glancePreviewColumnsHow to useBefore you quote a row

At a glance

Measured on the served file on 2026-09-12; the checksum above is the file these numbers describe.

Rows4
Columns7
Keyvintage + regime · unique
Cells left blank0 of 28 · 0.0%
Disbursed loans11,468,206
Disbursed, billions$792.6B
Fees, applied schedules$38.24B
If 2021 rules had applied throughout$43.16B
Lender fees per regime under each schedule, billions of dollars — plots fee_2020sched_B and fee_2021sched_B from ppp-fee-schedules-by-vintage.csv for the three regimes with more than 100 loans (the 17-loan 2020 second-draw residual is in the table only). Dots show the two comparison schedules. fee_actual_B is the modeled amount under the vintage-specific rules described below; it equals the 2020 dot for PPP1 and the 2021 dot for 2021 first draw, but on the 2021 second-draw row it matches neither dot (see the table), and it is not a ledger of SBA cash payments.
Lender fees per regime under each schedule, billions of dollarsDumbbell chart: for each loan regime, one dot for the fee under the 2020 CARES Act schedule and one for the fee under the 2021 Economic Aid Act schedule, joined by a line.Under the 2020 scheduleUnder the 2021 schedulePPP1 · 2020 · 5,136,243 loans$18.17B → $23.32BPPP2_FD · 2021 · 3,476,201 loans$2.91B → $8.34BPPP2_SD · 2021 · 2,855,745 loans$8.42B → $11.50B
The numbers behind this chart
RegimeUnder the 2020 scheduleUnder the 2021 scheduleApplied schedule · fee_actual_B
PPP1 · 2020 · 5,136,243 loans$18.17B$23.32B2020 CARES Act · $18.17B
PPP2_FD · 2021 · 3,476,201 loans$2.91B$8.34B2021 Economic Aid Act · $8.34B
PPP2_SD · 2021 · 2,855,745 loans$8.42B$11.50B2021 Economic Aid Act, second-draw tiers · $11.72B (matches neither column)

What it is

Four rows: 2020 first-draw loans (PPP1), 2021 first-draw loans (PPP2_FD), 2021 second-draw loans (PPP2_SD), and a residual 17 second-draw loans approved in 2020. For each: the number of disbursed loans, the dollars disbursed, and three fee totals in billions of dollars. fee_actual_B is the fee under the schedule that applied to that vintage; the other two columns are what the fee would have been if the 2020 schedule or the 2021 schedule had applied to every loan.

The table exists to answer one question: how much of the difference between what lenders earned in 2020 and in 2021 is explained by the change in the fee schedule rather than by the change in the loans. It is a model of the scheduled fee, not a ledger of payments SBA made.

How it was built

The 2020 CARES Act schedule paid lenders 5% on loans up to $350,000, 3% on loans above $350,000 and below $2 million, and 1% at $2 million and above. The 2021 Economic Aid Act schedule paid the lesser of $2,500 or 50% on loans up to $50,000, then 5% and 3% on the same tiers; second-draw loans were capped at $2 million, so the 1% tier never reaches them.

Every loan in the SBA file with a disbursed balance is placed in a regime by approval date and processing method, both schedules are computed on its current approved amount, and the results are summed. No bridge from these modeled amounts to SBA's own record of fees paid has been published here; the $38.24 billion total is the model, not a payment figure.

Preview

vintageregimeloansdisbursed_Bfee_actual_Bfee_2020sched_Bfee_2021sched_B
2020PPP15136243521.776101103580118.16729803490371618.16729803490371623.31853707922583
2020PPP2_SD170.0024087969.784095e-058.057470000000001e-059.784095e-05
2021PPP2_FD347620163.201094382491568.344423411989482.911583888286258.34442341198948
2021PPP2_SD2855745207.621464761560711.724444516761538.41767520425466711.498004516761663

First 4 of 4 rows · cells longer than 60 characters are cut with an ellipsis · shown as text, unformatted.

Files

FileRowsSizeSHA-256
ppp-fee-schedules-by-vintage.csv
CSV, UTF-8, header row
4430 Bd580579d0bef0d5cee1ca0251c5e63a3e61675fe869cf6a315a958b4d56ed7c2Download ↓
dictionary.csv
data dictionary, 7 rows
7—built with this pageDownload ↓

Columns

ColumnType, measuredBlankDistinctRange / valuesMeaning
vintageinteger022K – 2K · median 2KApproval year, 2020 or 2021.
regimetext03PPP2_SD (2), PPP1 (1), PPP2_FD (1)PPP1 = 2020 first draw; PPP2_FD = 2021 first draw; PPP2_SD = second draw (SBA processing method PPS).
loansinteger0417 – 5.1M · median 3.2MDisbursed loans in the regime.
disbursed_Bnumber040.00 – 521.78 · median 135.41Current approved amount of those loans, in billions of dollars.
fee_actual_Bnumber040.00 – 18.17 · median 10.03Modeled processing fees under the schedule that applied to the regime, in billions (computed from loan amounts, not fees SBA paid): the 2020 schedule for PPP1; the 2021 Economic Aid Act schedule for 2021 first draw; for 2021 second draw the same schedule with 3% above $350,000 and no 1% tier (second-draw loans were capped at $2 million).
fee_2020sched_Bnumber040.00 – 18.17 · median 5.66Fees if the 2020 CARES Act schedule had applied to every loan, in billions.
fee_2021sched_Bnumber040.00 – 23.32 · median 9.92Fees if the 2021 Economic Aid Act first-draw schedule had applied to every loan, in billions, including its 1% tier at $2 million and above; on the second-draw row this differs from fee_actual_B.

Type, blanks, distinct count, and range are measured on the file. The same table as CSV: dictionary.csv.

How to use it

Specific to this file, measured on it: keys, joins, encodings, units, and the values that will trip a naive count.

  • Four rows, one is a residual. The key is vintage + regime; the row PPP2_SD 2020 holds 17 loans and its fee columns are written in scientific notation (9.78409e-05). Parse as floats, not text.
  • Money columns are billions of dollars, unrounded, up to 21 characters per cell (disbursed_B example 521.7761011035801). Multiply by 1e9 for dollars; round before quoting.
  • fee_actual_B is the fee under the schedule that applied to the regime: the 2020 CARES Act schedule for PPP1 (so it equals fee_2020sched_B there) and the 2021 Economic Aid Act schedule for the 2021 regimes. For PPP2_FD it equals fee_2021sched_B; for PPP2_SD it does not: second-draw loans were capped at $2 million and pay 3% above $350,000, while fee_2021sched_B applies the first-draw schedule's 1% tier to loans of $2 million and above, so the two differ by about $226 million on the 2021 second-draw row. The difference between the columns is the whole point of the table.
  • LF line endings, UTF-8, 430 bytes. Small enough to read by eye.

Before you quote a row

  • Modeled, not observed. These are scheduled fees computed from loan amounts, not a record of what SBA paid each lender; fees on loans later cancelled or found ineligible are not netted out.
  • Population. 11,468,206 disbursed loans are the 11,468,210 rows of the 2024-09-30 source release minus 4 rows the disbursement filter removes (3 with no positive current approved amount, 1 fully undisbursed), measured on the source files on 2026-09-13.
  • Values are unrounded. The CSV carries full floating-point precision; round before presenting.
  • These are modeled scheduled fees, not an observed lender-payment ledger.
  • SBA's loan file marks 17 loans ($2.4 million) as second-draw loans but dates their approval between April and July 2020. Second-draw loans were first authorized by the Economic Aid Act of December 27, 2020, so the two fields on those records cannot both be right. The archive counts them by approval date, with the 2020 first round, and prices them under the 2020 fee schedule.
Cite this table. Name the source vintage; the numbers depend on it.PPP processing-fee schedules by vintage, modeled on SBA PPP FOIA loan-level data (2024-09-30 vintage). Pandemic Darlings, release pandemic-darlings-data-v1-2026-07-10, https://pandemicdarlings.com/data/ppp-fee-schedules-by-vintage/, SHA-256 d580579d0bef0d5cee1ca0251c5e63a3e61675fe869cf6a315a958b4d56ed7c2
Back to top