Skip to content
GetFunded

Open data

The Open Foundation List

Every U.S. private foundation that files Form 990-PF electronically, with what it gave, what it holds, and whether it says it accepts applications. It is free to download, and free to reuse when you credit the source.

Downloads

Download the list.

Plain spreadsheet files, published as a release on GitHub. No account is needed.

Released
Years covered
2017 to 2026 By the year the IRS processed each return.
Release on GitHub
data-2026-10-08
Snapshot label
20261009T083203Z

License

The list is published under CC BY 4.0. You may use it, share it and change it, as long as you credit the source. The license covers our work on the list: which records we chose, how we arranged them, and the columns we worked out from them. The facts come from public records. Facts are not subject to copyright, and the license does not restrict them.

Built fromIRS Form 990-PF e-file

How to cite

Open Funder Database contributors (GetFunded), from IRS e-file data. The Open Foundation List (release data-2026-10-08, October 9, 2026). https://getfunded.ai/foundations. Licensed CC BY 4.0.

New to .csv.gz files? How to open the list in Excel or Google Sheets.

The columns

What is in the list.

Two list files and a set of grants files. The first list has one row per foundation. The second has one row per foundation per fiscal year. The grants files, one for each fiscal year, have one row per grant whose recipient we matched to an organization record.

foundations.csv.gz

One row per foundation. 33 columns.

ColumnWhat it means
getfunded_idOur own id for the foundation. The other files use the same id.
einThe Employer Identification Number: the nine-digit number the IRS gives each organization. It can start with a zero.
nameThe foundation’s name on IRS records. When a record adds “C/O” or “%” and another name at the end (in care of), that part is left out.
cityThe city of its mailing address.
stateThe two-letter state of its mailing address.
zipThe ZIP code of its mailing address.
ntee_codeThe NTEE code: a short code for the foundation’s field of work. It is empty for many foundations.
ruling_yearThe year the IRS recognized it as tax-exempt.
websiteThe website the foundation wrote on its own return. It comes from the newest return that gives one.
first_fiscal_yearThe earliest fiscal year we hold a return for.
latest_fiscal_yearThe newest fiscal year we hold a return for.
years_on_fileHow many fiscal years of returns we hold.
latest_total_assetsTotal assets at the end of the latest fiscal year, at book value, in U.S. dollars.
latest_grants_paidWhat it paid out for charitable purposes in the latest fiscal year, in U.S. dollars. The next column says which line of the return this is.
latest_grants_paid_basisThe line of the return that latest_grants_paid was read from. The two lines are not the same measure, so do not compare one with the other. Empty when the return has neither line.
  • qualifying_distributionsThe “qualifying distributions” line: grants, plus other spending that counts toward the amount a foundation must pay out.
  • charitable_disbursementsThe “disbursements for charitable purposes” line. It is used when the return has no qualifying distributions line.
latest_revenueTotal revenue in the latest fiscal year, in U.S. dollars.
latest_expensesTotal expenses in the latest fiscal year, in U.S. dollars.
grants_on_fileHow many separate grant records we hold for the foundation, in all years. It is not the number of grants it made. Empty when we hold none.
grants_total_on_fileThe sum of those grant records, in U.S. dollars.
application_postureWhat the latest return says about applications. It is always one of three values.
  • accepts_applicationsAccepts applications
  • preselected_onlyFunds preselected organizations only
  • not_statedNot stated in filings
has_application_instructionsWhether the application section of that return tells you how to apply. Empty when the return has no application section.
  • tThe return says how to apply.
  • fThe return has an application section, but it does not say how to apply.
application_deadline_textThe deadline, in the foundation’s own words from the return. Empty when that text holds an email address or a phone number.
public_contact_emailA shared inbox, such as grants@, when the application part of the return lists one. A contact is not an invitation: check application_posture first.
public_contact_phoneA phone number, when the application part of the return lists one. A contact is not an invitation: check application_posture first.
latest_filing_object_idThe IRS id of the latest return, so you can find the exact filing.
latest_filing_tax_periodThe year and month in which the fiscal year of the latest return ended, written YYYYMM. For example, 202312 is December 2023.
source_datasetThe public datasets the row was built from. When there is more than one, a semicolon is between the names.
profile_urlThe link to the foundation’s page on GetFunded.
irs_standingNot in every releaseWhat three IRS lists say about the foundation’s tax-exempt status, on the dates in the release’s manifest. The revocation list holds automatic revocations only: no annual return or notice filed for three years in a row. Empty when the lists were not available for it. This column is not in every release.
  • listedIn the IRS master file or in Publication 78, and not on the automatic revocation list.
  • not_listedNot in the IRS master file and not in Publication 78. The automatic revocation list has no entry for it, or shows a reinstatement after the revocation. This does not mean that the foundation has shut down.
  • revokedAutomatically revoked: on the IRS Automatic Revocation of Exemption List with no reinstatement after it, and not in Publication 78. It is also not in the IRS master file, or the copy of the master file used for the release is older than the day the IRS posted the revocation. This does not mean that the foundation has shut down: see irs_filed_after_revocation.
  • revoked_then_relistedWas on the automatic revocation list, and is in the IRS master file or Publication 78 again.
  • lists_disagreeOn the automatic revocation list with no reinstatement after it, and also in Publication 78, or in a copy of the IRS master file that is not older than the day the IRS posted the revocation. The lists do not agree, and we do not choose between them.
irs_revocation_dateNot in every releaseThe date of its latest automatic revocation, when the IRS list has one. A foundation that was reinstated later still has a date here, so read irs_standing with it. This column is not in every release.
irs_on_pub78Not in every releaseWhether it is in IRS Publication 78 data, the IRS list of organizations that can receive tax-deductible gifts. This column is not in every release.
  • tIt is in Publication 78 data.
  • fIt is not. This alone does not mean that it lost its status.
irs_filed_after_revocationNot in every releaseWhether the foundation filed a return for a tax year after the date in irs_revocation_date. A foundation that loses its tax-exempt status must still file, so a later return does not show that the IRS reinstated it. Empty when the IRS list has no revocation for it. This column is not in every release.
  • tWe hold a return for a tax year after the revocation date.
  • fWe hold no return for a tax year after the revocation date.
address_basisNot in every releaseWhere the city, state and ZIP code come from. Empty when we hold no address. This column is not in every release.
  • irs_master_fileThe IRS master file, the IRS’s list of every tax-exempt organization.
  • latest_returnThe city, state and ZIP code the foundation wrote on its latest return. They are used when the foundation is not in the IRS master file, and they are as old as that return.

foundation_years.csv.gz

One row per foundation per fiscal year. 16 columns.

ColumnWhat it means
einThe foundation’s Employer Identification Number. Use it to match rows to the other files.
getfunded_idOur own id for the foundation, the same as in the other files.
fiscal_yearThe calendar year in which the fiscal year ended.
tax_period_endThe last day of that fiscal year, written YYYY-MM-DD.
return_typeThe form that was filed for the year.
  • 990PFForm 990-PF, the return for private foundations.
  • 990Form 990. A few organizations that the IRS lists as private foundations filed it for a year. grants_paid is empty for that year.
total_revenueTotal revenue for the year, in U.S. dollars.
total_expensesTotal expenses for the year, in U.S. dollars.
total_assets_eoyTotal assets at the end of the year, at book value, in U.S. dollars.
net_assets_eoyTotal assets minus what it owes, at the end of the year, in U.S. dollars.
grants_paidWhat it paid out for charitable purposes during the year, in U.S. dollars. The next column says which line of the return this is.
grants_paid_basisThe line of the return that grants_paid was read from. Empty when the return has neither line.
  • qualifying_distributionsThe “qualifying distributions” line: grants, plus other spending that counts toward the amount a foundation must pay out.
  • charitable_disbursementsThe “disbursements for charitable purposes” line. It is used when the return has no qualifying distributions line.
n_grants_on_fileHow many separate grant records we hold for that year. Empty when we hold none.
grants_linked_on_fileHow many of those grant records are in the grants file for that year. These are the grants whose recipient we matched to an organization record.
grants_not_linked_on_fileHow many of those grant records are not in the grants file. We could not match the recipient to an organization record, so we count the grant and do not name the recipient.
amount_not_linked_on_fileThe sum of the grant records that are not in the grants file, in U.S. dollars. Empty when there are none.
filing_object_idThe IRS id of the return, so you can find the exact filing.

foundation_grants_<fiscal_year>.csv.gz

One file per fiscal year. One row per grant whose recipient we matched to an organization record. Other grants are counted in foundation_years.csv.gz and are not listed. 12 columns.

ColumnWhat it means
funder_einThe EIN of the foundation that made the grant. It is the same as ein in the other files.
funder_getfunded_idOur own id for that foundation, the same as getfunded_id in the other files.
funder_nameThe name of that foundation on IRS records.
recipient_einThe EIN of the organization record we matched the recipient to. Empty when that record has no EIN.
recipient_getfunded_idOur own id for that organization record.
recipient_nameThe name on that organization record. It is not the text the foundation typed on its return. An “in care of” part at the end of a name is left out.
recipient_cityThe city on that organization record.
recipient_stateThe state on that organization record. It is two letters on an IRS record. A record from another public source can have the full name of the state.
amountThe amount of the grant as the foundation reported it, in U.S. dollars.
fiscal_yearThe calendar year in which the foundation’s fiscal year ended.
filing_object_idThe IRS id of the return the grant comes from, so you can find the exact filing.
link_basisNot in every releaseHow we matched the recipient to an organization record. Empty for the few grants that come from a Form 990: the files do not say how those were matched. This column is not in every release.
  • filer_consensusThree or more grantmaking charities wrote this recipient name and state on their own returns with this organization’s EIN.
  • name_matchOur name-and-place matcher made the match. The name the foundation wrote fits exactly one organization: the only one with that name in the same state, or the only one with that name in the country.

Four rules

How to read it honestly.

The list says what the returns say, and nothing more. Keep these four rules in mind when you sort, filter or add up.

  1. 01

    “not_stated” does not mean closed.

    It means the latest return says nothing about applications. That is a missing statement, not a refusal. Do not remove these foundations from your list as if they had said no.

  2. 02

    An empty cell means not available, never zero.

    When a line is missing from the return, the cell is empty. A 0 in the file is a real zero that the foundation reported. Do not fill empty cells with 0 before you add numbers up.

  3. 03

    Amended returns replace the originals.

    When a foundation files a corrected return for the same year, the list uses the newer one. Nothing is counted twice.

  4. 04

    Contact details are for shared inboxes and office phones only.

    An email or a phone number appears only when the filing lists a shared inbox, such as grants@, or an office phone. A named person’s address is left out. A contact is not an invitation. Check application_posture first: a foundation that funds preselected organizations only can still have a contact here.

On the site, not_stated readsand an empty cell readsNot available

More rules for the grants files

The grants files name recipients, so they need more care. Read these before you count, add up or share rows from them.

  1. 05

    The grants files do not list every grant.

    A foundation types the name of each recipient on its return, and some recipients are private people, such as a student with a scholarship. So a grant is listed only when we matched its recipient to an organization record. Every other grant is counted in foundation_years.csv.gz and is not named. The purpose of each grant is not in the files, because that text can name a private person. You can read it on the foundation’s page on GetFunded. A later release can add it after a privacy review.

  2. 06

    Do not use a grants file as a total of giving.

    The sum of a grants file is less than what the foundations gave. Use grants_paid in foundation_years.csv.gz for the total. The columns grants_linked_on_file and grants_not_linked_on_file show how much of each year is in the grants file.

  3. 07

    A match can be wrong.

    The recipient name, city and state come from the organization record we matched, not from the text on the return. When a file has the link_basis column, it says how each match was made. It does not say that the match is right. Check the return (filing_object_id) before you rely on a row.

Search

Browse without downloading.

You do not need a spreadsheet. Pick a state, or start from one of these three lists. Search is free and needs no account.

Private foundations by state

The number is how many private foundations you can search in that state right now. It comes live from the database and is kept for a few hours. The download can hold fewer, because it lists only the foundations that file Form 990-PF electronically.

Open source

Rebuild it yourself.

The whole pipeline is open source. Anyone can run it on the same IRS files and compare the result with ours.

You need a working copy of the database first. The self-install guide shows how. Then run these from the corpus folder.

  1. 1. Load the earlier years of returns.

    bash
    uv run funderdb backfill --years 2020,2019,2018,2017 --discard-zips
  2. 2. Write the list files.

    bash
    uv run funderdb export foundations --out data/export
  3. 3. Read the full guide.

    It is in the repository on GitHub: corpus/docs/OPEN-FOUNDATION-LIST.md

Corrections

Found a mistake?

We publish returns as they were filed, and filers make mistakes. If a row looks wrong, tell us. You do not need to know any code.

Report a data correction on GitHub

The form asks for the foundation’s name, its EIN, and what you checked. You need a free GitHub account. We trace the value back to the filing, then fix our reading of it, load a newer return, or leave it as filed with a note.

Start with one foundation.

Search is free and needs no account. Every fact on a foundation’s page points at the filing it came from.