SBA PPP Loans Scraper: Business Leads, Amounts & Lenders avatar

SBA PPP Loans Scraper: Business Leads, Amounts & Lenders

Pricing

from $17.00 / 1,000 results

Go to Apify Store
SBA PPP Loans Scraper: Business Leads, Amounts & Lenders

SBA PPP Loans Scraper: Business Leads, Amounts & Lenders

Search U.S. SBA Paycheck Protection Program (PPP) loan records. Get borrower name, full address, loan and forgiveness amount, jobs reported, lender, NAICS industry, business type and demographics. Filter by business name, state, NAICS and amount. Export to JSON, CSV or Excel.

Pricing

from $17.00 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

14 days ago

Last modified

Share

SBA PPP Loans Scraper: Business Leads, Amounts & Lenders

SBA PPP Loans Scraper: Business Leads, Amounts & Lenders

Here is one real result, with every field the actor returns:

{
"loanNumber": "5668498305",
"borrowerName": "SOUTH RESTAURANT + COFFEEHOUSE LLC",
"borrowerAddress": "11124 Old Seward Hwy Ste A",
"borrowerCity": "Anchorage",
"borrowerState": "AK",
"borrowerZip": "99515-3122",
"dateApproved": "01/25/2021",
"currentApprovalAmount": 942263,
"initialApprovalAmount": 942263,
"undisbursedAmount": 0,
"forgivenessAmount": 950988.61,
"forgivenessDate": "01/06/2022",
"loanStatus": "Paid in Full",
"loanStatusDate": "02/10/2022",
"term": 60,
"sbaGuarantyPercentage": 100,
"jobsReported": 89,
"naicsCode": "722511",
"industry": "Accommodation & Food Services",
"businessType": "Limited Liability Company(LLC)",
"businessAgeDescription": "Existing or more than 2 years old",
"franchiseName": null,
"nonprofit": null,
"race": "Asian",
"ethnicity": "Not Hispanic or Latino",
"gender": "Female Owned",
"veteran": "Non-Veteran",
"ruralUrbanIndicator": "U",
"hubzoneIndicator": "N",
"lmiIndicator": "N",
"originatingLender": "Northrim Bank",
"originatingLenderCity": "ANCHORAGE",
"originatingLenderState": "AK",
"servicingLenderName": "Northrim Bank",
"servicingLenderCity": "ANCHORAGE",
"servicingLenderState": "AK",
"projectCity": "Anchorage",
"projectCountyName": "ANCHORAGE",
"projectState": "AK",
"projectZip": "99515-3122",
"congressionalDistrict": "AK-",
"processingMethod": "PPS",
"payrollProceed": 942258,
"utilitiesProceed": 1,
"rentProceed": null,
"mortgageInterestProceed": null,
"healthCareProceed": null,
"debtInterestProceed": null,
"refinanceEidlProceed": null,
"source": "SBA PPP FOIA",
"observedAt": "2026-08-10T14:32:02.619Z"
}

The most complete SBA PPP loans scraper available. It returns every field the SBA PPP FOIA release exposes for each funded loan, plus a derived industry label mapped from the NAICS sector, and gives you five filters to target exactly the loan records you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor queries the U.S. Small Business Administration's Paycheck Protection Program (PPP) FOIA release, applies the filters you pass as input, paginates through the matching loans, and writes one normalized record per loan to the run's dataset. Each record is a funded business with its name, full street address, loan amount, jobs reported, lender, NAICS industry, demographics, and forgiveness detail. Missing source values are returned as null, numeric fields are parsed to numbers, and a derived industry label is mapped from the two-digit NAICS sector so you can group loans without extra parsing.

Data covers approved PPP loans in the public FOIA dataset. Results are sorted by current approval amount, largest first.

Quickstart

Open the actor, paste this into the input, and press Run. It returns 10 PPP loans whose borrower name contains "coffee".

{
"maxLoans": 10,
"businessName": "coffee"
}

Every input field is optional. Leave businessName empty to pull the largest loans with no name filter. Combine state, naicsCode, minAmount, and maxAmount to narrow the set.

Input reference

FieldTypeRequiredDefaultDescription
maxLoansintegerno10Maximum number of loan records to collect.
businessNamestringno(empty)Keep only loans whose borrower name contains this text (for example coffee, dental, logistics). Case-insensitive partial match.
statestringno(empty)Two-letter US state code of the borrower, for example CA, TX, NY, FL.
naicsCodestringno(empty)Exact 6-digit NAICS industry code to filter by, for example 722511 for full-service restaurants.
minAmountintegerno(none)Only return loans with a current approval amount at or above this value (USD).
maxAmountintegerno(none)Only return loans with a current approval amount at or below this value (USD).

Filters combine with logical AND. With an empty input the actor returns the largest PPP loans, sorted by current approval amount descending.

Output reference

One dataset item per loan. Types: string, number, or null when the source value is absent.

FieldTypeDescription
loanNumberstringSBA loan number (unique per loan).
borrowerNamestringLegal name of the funded business.
borrowerAddressstringBorrower street address.
borrowerCitystringBorrower city.
borrowerStatestringTwo-letter state code of the borrower.
borrowerZipstringBorrower ZIP code.
dateApprovedstringDate the loan was approved (MM/DD/YYYY).
currentApprovalAmountnumberCurrent approved loan amount in USD.
initialApprovalAmountnumberInitial approved loan amount in USD.
undisbursedAmountnumberUndisbursed amount in USD.
forgivenessAmountnumberAmount forgiven in USD, or null if none.
forgivenessDatestringDate forgiveness was recorded (MM/DD/YYYY), or null.
loanStatusstringLoan status, for example Paid in Full, Exemption 4.
loanStatusDatestringDate of the current loan status.
termnumberLoan term in months.
sbaGuarantyPercentagenumberSBA guaranty percentage.
jobsReportednumberJobs the borrower reported the loan would support.
naicsCodestring6-digit NAICS industry code.
industrystringHuman-readable industry label derived from the NAICS two-digit sector, or null.
businessTypestringBusiness legal structure, for example Limited Liability Company(LLC).
businessAgeDescriptionstringReported business age bucket.
franchiseNamestringFranchise name, or null if not a franchise.
nonprofitstringNonprofit indicator, or null.
racestringReported owner race, or null.
ethnicitystringReported owner ethnicity, or null.
genderstringReported owner gender, or null.
veteranstringReported veteran status, or null.
ruralUrbanIndicatorstringR (rural) or U (urban).
hubzoneIndicatorstringHUBZone indicator, Y or N.
lmiIndicatorstringLow-to-moderate income area indicator, Y or N.
originatingLenderstringLender that originated the loan.
originatingLenderCitystringOriginating lender city.
originatingLenderStatestringOriginating lender state.
servicingLenderNamestringLender servicing the loan.
servicingLenderCitystringServicing lender city.
servicingLenderStatestringServicing lender state.
projectCitystringCity where the funded project is located.
projectCountyNamestringCounty of the funded project.
projectStatestringState of the funded project.
projectZipstringZIP code of the funded project.
congressionalDistrictstringCongressional district of the project.
processingMethodstringSBA processing method, for example PPS, PPP.
payrollProceednumberProceeds used for payroll, or null.
utilitiesProceednumberProceeds used for utilities, or null.
rentProceednumberProceeds used for rent, or null.
mortgageInterestProceednumberProceeds used for mortgage interest, or null.
healthCareProceednumberProceeds used for health care, or null.
debtInterestProceednumberProceeds used for debt interest, or null.
refinanceEidlProceednumberProceeds used to refinance an EIDL loan, or null.
sourcestringAlways SBA PPP FOIA.
observedAtstringISO 8601 timestamp of when the record was collected.

On a failed run, a single item with a populated error field is written instead, and it is not charged.

Example output record

Real record from a live run (input {"maxLoans": 10, "businessName": "coffee"}):

{
"loanNumber": "5668498305",
"borrowerName": "SOUTH RESTAURANT + COFFEEHOUSE LLC",
"borrowerAddress": "11124 Old Seward Hwy Ste A",
"borrowerCity": "Anchorage",
"borrowerState": "AK",
"borrowerZip": "99515-3122",
"dateApproved": "01/25/2021",
"currentApprovalAmount": 942263,
"initialApprovalAmount": 942263,
"undisbursedAmount": 0,
"forgivenessAmount": 950988.61,
"forgivenessDate": "01/06/2022",
"loanStatus": "Paid in Full",
"loanStatusDate": "02/10/2022",
"term": 60,
"sbaGuarantyPercentage": 100,
"jobsReported": 89,
"naicsCode": "722511",
"industry": "Accommodation & Food Services",
"businessType": "Limited Liability Company(LLC)",
"businessAgeDescription": "Existing or more than 2 years old",
"franchiseName": null,
"nonprofit": null,
"race": "Asian",
"ethnicity": "Not Hispanic or Latino",
"gender": "Female Owned",
"veteran": "Non-Veteran",
"ruralUrbanIndicator": "U",
"hubzoneIndicator": "N",
"lmiIndicator": "N",
"originatingLender": "Northrim Bank",
"originatingLenderCity": "ANCHORAGE",
"originatingLenderState": "AK",
"servicingLenderName": "Northrim Bank",
"servicingLenderCity": "ANCHORAGE",
"servicingLenderState": "AK",
"projectCity": "Anchorage",
"projectCountyName": "ANCHORAGE",
"projectState": "AK",
"projectZip": "99515-3122",
"congressionalDistrict": "AK-",
"processingMethod": "PPS",
"payrollProceed": 942258,
"utilitiesProceed": 1,
"rentProceed": null,
"mortgageInterestProceed": null,
"healthCareProceed": null,
"debtInterestProceed": null,
"refinanceEidlProceed": null,
"source": "SBA PPP FOIA",
"observedAt": "2026-08-10T14:32:02.619Z"
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~sba-ppp-loans-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"businessName":"coffee","state":"CA","maxLoans":25}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~sba-ppp-loans-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"naicsCode":"722511","minAmount":150000,"maxLoans":100}'

Apify CLI:

apify call scrapers_lat/sba-ppp-loans-scraper \
--input '{"businessName":"coffee","maxLoans":10}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per record returned (result event). See the pricing tab for the current per-result price.
  • No charge on failure. If a run errors, the actor writes a single item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 records per run. Upgrade for higher maxLoans.

FAQ and troubleshooting

A run returned 0 records. Why? The filter combination matched nothing in the source. Loosen filters (for example remove state or naicsCode, or widen the amount range). Zero-result runs are not charged.

How do I find loans in one industry? Set naicsCode to the exact 6-digit code (for example 722511 for full-service restaurants). The industry field in each record is the derived sector label.

How do I target high-value loans? Set minAmount (and optionally maxAmount). Results are already sorted by current approval amount, largest first.

Why are some demographic fields null? The SBA release records these only when the borrower reported them. Missing source values are returned as null, never invented.

Is this an official SBA tool? No. This actor is independent and has no affiliation with the SBA. It reads only data that the SBA publishes in its PPP FOIA release. Use it in accordance with the SBA's terms.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with the U.S. Small Business Administration. Accesses only publicly available SBA PPP FOIA data. Use in accordance with the SBA's terms.