Snowflake Marketplace

US Nonprofit Officers and Finances

Data documentation for the Civly listing on the Snowflake Marketplace: what’s in it, how it’s structured, and how to query it once installed.

70,588,057IRS organization and filing records
5tables
1,964,958organization records
104columns across the five tables
About this dataset

What’s in the listing

Civly compiles IRS organization and filing records into five tables containing 70,588,057 records, verified September 27, 2026. Record counts are not counts of unique people or a complete census of nonprofit filings. Coverage varies by year and form.

The trial provides two static snapshots created September 27, 2026: NONPROFITS.PREVIEW_EXEMPT_ORGS contains 1,964,958 organization records and NONPROFITS.PREVIEW_FINANCIALS contains 102,869 tax-year 2025 financial filings. Tax year 2025 is the latest year present and is not represented as a complete filing year.

The full subscription adds officers and directors, private-foundation grants and contributors, and the financial filing history. The full tables are checked for source changes weekly. The trial snapshots do not update automatically. Collection timestamps describe when Civly stored or updated a record, which may differ from when a return was filed or published.

FactDetail
Total records70,588,057 records in five tables, verified September 27, 2026. Record counts are not counts of unique people or a complete census of nonprofit filings.
Trial listingTwo static snapshots created September 27, 2026: NONPROFITS.PREVIEW_EXEMPT_ORGS (1,964,958 organization records) and NONPROFITS.PREVIEW_FINANCIALS (102,869 tax-year 2025 financial filings)
Full datasetAdds officers and directors, private-foundation grants and contributors, and the financial filing history, available by subscription
SourceIRS Form 990 e-file downloads (filings) and the IRS Exempt Organizations Business Master File Extract (organizations), compiled by Civly
RefreshFull tables checked for source changes weekly; the trial snapshots do not update automatically
Tax years2011-2025, varying by table and form. Tax year 2025 is the latest year present and is not represented as a complete filing year.
Key matching columnsEIN (kept as text); for filing-level analysis, EIN, TAX_YEAR and source filing identifiers such as OBJECT_ID
Coverage

Records by table

TableRecordsTax years
OFFICERS56,275,1532011-2025
FINANCIALS1,898,0362018-2025
PF_CONTRIBUTORS451,4842013-2025
PF_GRANTS9,998,4262013-2025
EXEMPT_ORGS1,964,958Organization snapshot

Interpreting the records

Amounts are in US dollars as reported to the IRS and are not independently audited by Civly. Missing values do not mean zero. Form 990 financial summaries do not represent every return type. The organization directory alone does not establish current tax deductibility. Private-foundation contributor records describe contributors disclosed in public foundation filings, not all charitable donors.

Schemas

Data dictionary

The five full tables contain 104 columns in total. Both trial tables retain the columns of their corresponding full table. Numeric fields may be integers or floating-point values as shown below. Missing values remain null.

Schema

Data dictionary: OFFICERS

16 columns. Available in the full subscription.

ColumnTypeMeaning
IDNUMBER(38,0)Internal record identifier.
EINVARCHAROrganization employer identification number, retained as text.
ORG_NAMEVARCHAROrganization name reported on the filing.
TAX_YEARNUMBER(38,0)Tax year associated with the filing.
FORM_TYPEVARCHARSource return type, including Form 990 or 990-EZ.
OFFICER_NAMEVARCHAROfficer or director name reported on the return.
TITLEVARCHARPosition or title reported on the return.
AVG_HOURS_PER_WEEKFLOATAverage weekly hours reported on the return.
REPORTABLE_COMP_FROM_ORGFLOATReportable compensation from the filing organization in US dollars.
REPORTABLE_COMP_FROM_RELATEDFLOATReportable compensation from related organizations in US dollars.
OTHER_COMPENSATIONFLOATOther reported compensation in US dollars.
OBJECT_IDVARCHARIRS e-file object identifier for the source return.
CREATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly first stored the source record.
UPDATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly last updated the source record.
NORM_FIRST_NAMEVARCHARNormalized first name derived for matching.
NORM_LAST_NAMEVARCHARNormalized last name derived for matching.
Schema

Data dictionary: FINANCIALS

23 columns. Trial table: NONPROFITS.PREVIEW_FINANCIALS, restricted to tax year 2025.

ColumnTypeMeaning
IDNUMBER(38,0)Internal record identifier.
EINVARCHAROrganization employer identification number, retained as text.
ORG_NAMEVARCHAROrganization name reported on the filing.
TAX_YEARNUMBER(38,0)Tax year associated with the filing.
TAX_PERIOD_ENDDATEEnd date of the tax period reported on the filing.
RETURN_TYPEVARCHARIRS return type. This financial table contains Form 990 summaries.
CITYVARCHARCity reported for the organization.
STATEVARCHARState reported for the organization.
TOTAL_REVENUENUMBER(38,0)Current-year total revenue reported on the filing, in US dollars.
PRIOR_TOTAL_REVENUEFLOATPrior-year total revenue reported on the same filing, in US dollars.
CONTRIBUTIONSNUMBER(38,0)Current-year contributions reported on the filing, in US dollars.
PRIOR_CONTRIBUTIONSFLOATPrior-year contributions reported on the same filing, in US dollars.
PROGRAM_SERVICE_REVENUENUMBER(38,0)Reported program-service revenue in US dollars.
TOTAL_EXPENSESNUMBER(38,0)Reported total expenses in US dollars.
GRANTS_TO_INDIVIDUALSNUMBER(38,0)Reported grants and assistance to individuals in US dollars.
FEES_FOR_SERVICES_OTHERFLOATReported other fees for services in US dollars.
SALARIESNUMBER(38,0)Reported salaries, other compensation and employee benefits in US dollars.
NET_ASSETS_EOYNUMBER(38,0)Reported net assets or fund balances at year end, in US dollars.
MISSIONVARCHARMission or activity description reported by the organization.
OBJECT_IDVARCHARIRS e-file object identifier for the source return.
CREATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly first stored the source record.
UPDATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly last updated the source record.
WEBSITEVARCHARWebsite reported by the organization, where supplied.
Schema

Data dictionary: PF_CONTRIBUTORS

16 columns. Available in the full subscription.

ColumnTypeMeaning
IDNUMBER(38,0)Internal record identifier.
FOUNDATION_EINVARCHAREmployer identification number of the filing private foundation.
FOUNDATION_NAMEVARCHARName of the filing private foundation.
TAX_YEARNUMBER(38,0)Tax year associated with the filing.
CONTRIBUTOR_NAMEVARCHARContributor name disclosed on the private-foundation return.
CONTRIBUTOR_ADDRESSVARCHARContributor address disclosed on the private-foundation return.
CONTRIBUTION_AMOUNTNUMBER(38,0)Reported contribution amount in US dollars.
CONTRIBUTION_TYPEVARCHARSource-reported contribution type.
OBJECT_IDVARCHARIRS e-file object identifier for the source return.
CREATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly first stored the source record.
UPDATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly last updated the source record.
NORM_FIRST_NAMEVARCHARNormalized first name derived for matching.
NORM_LAST_NAMEVARCHARNormalized last name derived for matching.
NORM_STATEVARCHARState parsed from the contributor address.
NORM_CITYVARCHARCity parsed from the contributor address.
NORM_DONOR_TYPEVARCHARDerived contributor classification based on the reported name. This is not an IRS classification.
Schema

Data dictionary: PF_GRANTS

15 columns. Available in the full subscription.

ColumnTypeMeaning
IDNUMBER(38,0)Internal record identifier.
FOUNDATION_EINVARCHAREmployer identification number of the filing private foundation.
FOUNDATION_NAMEVARCHARName of the filing private foundation.
TAX_YEARNUMBER(38,0)Tax year associated with the filing.
RECIPIENT_NAMEVARCHARGrant recipient name reported by the foundation.
RECIPIENT_ADDRESSVARCHARGrant recipient address reported by the foundation.
RECIPIENT_EINVARCHARRecipient employer identification number when available. Often absent in private-foundation filings.
RECIPIENT_RELATIONSHIPVARCHARReported relationship of the recipient to the foundation.
FOUNDATION_STATUSVARCHARRecipient foundation or exemption status reported on the grant entry.
GRANT_PURPOSEVARCHARPurpose of the grant as reported by the foundation.
AMOUNTNUMBER(38,0)Reported grant amount in US dollars.
OBJECT_IDVARCHARIRS e-file object identifier for the source return.
CREATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly first stored the source record.
UPDATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly last updated the source record.
RECIPIENT_STATEVARCHARState parsed from the reported recipient address.
Schema

Data dictionary: EXEMPT_ORGS

34 columns. Trial table: NONPROFITS.PREVIEW_EXEMPT_ORGS.

ColumnTypeMeaning
EINVARCHAROrganization employer identification number, retained as text.
NAMEVARCHAROrganization name from the IRS organization extract.
NORM_NAMEVARCHARNormalized organization name derived for matching.
SORT_NAMEVARCHARSecondary or sort name from the IRS extract.
IN_CARE_OF_NAMEVARCHARIn-care-of name associated with the mailing address.
STREETVARCHAROrganization mailing street address.
CITYVARCHARCity reported for the organization.
STATEVARCHARState reported for the organization.
ZIP_CODEVARCHARMailing postal code retained as text.
SUBSECTIONVARCHARIRS tax-exemption subsection code.
SUBSECTION_LABELVARCHARReadable label derived from the IRS subsection code.
NTEE_CODEVARCHARNational Taxonomy of Exempt Entities classification code, where present.
GROUP_EXEMPTIONVARCHARIRS group exemption number.
AFFILIATIONVARCHARIRS affiliation code.
CLASSIFICATIONVARCHARIRS classification code.
RULINGVARCHARIRS ruling year and month in the original YYYYMM format.
RULING_DATEDATERuling year and month represented as the first day of that month.
DEDUCTIBILITYVARCHARIRS deductibility code from this extract.
FOUNDATION_CODEVARCHARIRS foundation classification code.
ACTIVITYVARCHARIRS activity codes from the source extract.
ORGANIZATION_CODEVARCHARIRS organization-type code.
STATUSVARCHARIRS organization-status code from this extract.
TAX_PERIODVARCHARTax period recorded in the extract, in YYYYMM format.
ASSET_CODEVARCHARIRS asset-amount range code.
INCOME_CODEVARCHARIRS income-amount range code.
FILING_REQ_CODEVARCHARIRS filing requirement code.
PF_FILING_REQ_CODEVARCHARIRS private-foundation filing requirement code.
ACCOUNTING_PERIODVARCHARAccounting period ending month recorded by the IRS.
ASSET_AMOUNTFLOATAsset amount recorded in the organization extract, in US dollars.
INCOME_AMOUNTFLOATIncome amount recorded in the organization extract, in US dollars.
REVENUE_AMOUNTFLOATRevenue amount recorded in the organization extract, in US dollars.
SOURCE_FILEVARCHARIRS regional organization-extract filename identifying the source.
CREATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly first stored the source record.
UPDATED_ATTIMESTAMP_NTZ(9)Timestamp when Civly last updated the source record.
Matching

Joining records

Keep EIN values as text to preserve leading zeroes. Join organizations by EIN. For filing-level analysis, use EIN, tax year and source filing identifiers where available. Financials may contain original and amended returns for the same organization and tax year. Decide which filings to include before aggregating financial amounts or joining them to multiple officer records.

Earlier years have uneven coverage. Prior-year revenue and contributions are figures reported on the same return as the current-year values. They are not calculated by joining a separate earlier return.

Getting started

Sample queries

After installing, set your worksheet database selector to the installed database. These queries then run as written.

-- Organizations by state and exemption category
SELECT STATE, SUBSECTION_LABEL, COUNT(*) AS ORGANIZATIONS
FROM NONPROFITS.PREVIEW_EXEMPT_ORGS
GROUP BY STATE, SUBSECTION_LABEL
ORDER BY ORGANIZATIONS DESC;

-- 2025 filing coverage and financial fields
-- Counts describe filings. An organization may have more than one return.
-- Missing financial values are not zero.
SELECT TAX_YEAR, COUNT(*) AS FILINGS,
       COUNT(DISTINCT EIN) AS ORGANIZATIONS,
       COUNT(TOTAL_REVENUE) AS FILINGS_WITH_REVENUE,
       MIN(TAX_PERIOD_END) AS EARLIEST_PERIOD_END,
       MAX(TAX_PERIOD_END) AS LATEST_PERIOD_END
FROM NONPROFITS.PREVIEW_FINANCIALS
GROUP BY TAX_YEAR;

-- Connect financial filings to the organization directory
-- The directory is a snapshot and may not include every historical filer.
-- The left join retains filings without a directory match.
-- Multiple filings per EIN are retained.
SELECT f.EIN, f.ORG_NAME, f.TAX_YEAR, f.OBJECT_ID,
       e.SUBSECTION_LABEL, e.NTEE_CODE, e.STATE,
       f.TOTAL_REVENUE, f.TOTAL_EXPENSES, f.NET_ASSETS_EOY
FROM NONPROFITS.PREVIEW_FINANCIALS f
LEFT JOIN NONPROFITS.PREVIEW_EXEMPT_ORGS e ON e.EIN = f.EIN
ORDER BY f.TOTAL_REVENUE DESC NULLS LAST, f.EIN, f.OBJECT_ID
LIMIT 100;
Provenance

Sourcing and attribution

Filing records come from the IRS Form 990 e-file downloads. Organization records come from the IRS Exempt Organizations Business Master File Extract. The IRS provides a field and code reference for the organization extract. Use the IRS Tax Exempt Organization Search to check the relevant source records.

Filing tables retain the IRS OBJECT_ID. The organization directory retains SOURCE_FILE. Normalized names and parsed geographic fields are derived by Civly. The contributor-type classification is derived from the reported name and is not an IRS classification.

For coverage or access questions: [email protected]