Skip to main content

Data Story

San Francisco Nonprofit Contracts and Spending

Dashboards showing City spending on nonprofit contracts

Controller's Office

The City and County of San Francisco (“City”) contracts with hundreds of nonprofit organizations to provide services for San Franciscans. These services include healthcare, legal aid, shelter, children’s programming, and more.


These dashboards use data from SF OpenBook, the City’s financial transparency portal. This page presents City spending on nonprofits through the most recent complete fiscal year.


This page shows three views of nonprofit spending:
•    Total nonprofit spending across all departments and nonprofits
•    Nonprofit spending and contracts by department
•    Nonprofit spending and contracts by nonprofit

Citywide Nonprofit Spending Overview

The dashboard below provides Citywide spending information on nonprofit services for each fiscal year (FY) since 2022. Each fiscal year runs from July to June (e.g., FY26 refers to July 2025 through June 2026).

The dashboard also shows data for the most recent complete fiscal year. This includes total spending, the total number of nonprofits funded, and the total number of departments contracting with nonprofits.

Data notes and sources

The data source is the Supplier Payments dataset on SF OpenBook: https://openbook.sfgov.org. The dataset contains all the purchase orders and payments issued to City suppliers. The data pulled for the dashboards reflect supplier transactions that occurred within each fiscal year. Some payments may be made based on prior fiscal year invoices and data may not reflect payments for invoices received after the fiscal year end. This data will be updated at the close of each fiscal year. Please use SF OpenBook to find current-year data. 

The Controller’s Office performs several significant data cleaning steps outlined below. Starting with FY26 data, improvements to how the City's financial system identifies nonprofit suppliers allowed us to simplify the first cleaning step. As a result, Step 1 differs for data through FY25 and data from FY26 onward. Steps 2 and 3 apply to all years. Visit the SF Open Data Portal to download the full, cleaned dataset.

1. Identifying nonprofit suppliers and contracted services

All years: Payments to suppliers may include payments for services to the City, such as memberships, use of space, and passthrough payments to beneficiaries. To identify payments specifically for contracted services delivered by nonprofits, we filtered the SF OpenBook report to only include the following types of goods and services prior to exporting the data: Community Based Org Svcs; Homeless Hsng And Supportv Service; Profess & Specialized Svcs; Professional/Specialized Svcs.

Data through FY25: SF OpenBook provides a filter labeled "Non-Profits Only" (Yes, No), and resulting datasets exported from SF OpenBook include a "Non Profit" column to indicate whether the supplier is a nonprofit (Yes, Blank). Through FY25, this field was not always accurate and excluded about 150 known nonprofits that were not labeled as a nonprofit in the City's financial system. To ensure a complete dataset, we exported a full list of supplier payment data from SF OpenBook with the "Non-Profits Only" field filtered to "No", which provides a list of all supplier payments regardless of nonprofit status. We cleaned this data by adding a new "Nonprofit" column within the dataset and used this column to note a nonprofit status of "CON-marked Nonprofit" for approximately 150 known nonprofit suppliers without this indicator flagged in the financial system, in addition to any nonprofits already accurately flagged in the system. We then filtered the full dataset using the new "Nonprofit" column.

Data from FY26 onward: The City has since improved how nonprofit status is recorded in its financial system, and this status now feeds the "Non-Profits Only" filter in SF OpenBook. Because of this, the manual identification step above is no longer needed. Starting with FY26, we export supplier payment data from SF OpenBook with the "Non-Profits Only" filter set to "Yes", along with the types of goods and services filter described above. Nonprofit status in the City's financial system may change over time as supplier information is updated.

2. While the University of California, San Francisco (UCSF) is technically not-for-profit, a university's financial management is very different from traditional nonprofit service providers, and the City's agreement with UCSF includes hospital staffing in addition to contracted services to the public. As such, we have excluded payments to UCSF from all dashboards. There are divisions of UCSF that provide more traditional contracted services, but these cannot be clearly identified in the data. Note that this may reflect an underrepresentation of overall spending.

3. We also exclude several specific contracts that are predominantly "pass through" payments where the nonprofit provider receives funds that they disperse to other agencies, such as for childcare or workforce subsidies. These types of contracts are substantially different from contracts where the nonprofit is providing direct services to San Franciscans. As of reporting for FY26 data, these dashboards exclude the following contract numbers related to pass-through payments for childcare subsidies: 1000026979, 1000028798, 1000027035, 1000008034, 1000034737.

Because of these additional data cleaning steps, the totals and amounts reflected in this dashboard may differ from other reporting on the City’s nonprofit spending.

View source data

Department Spending Overview

Many City departments contract with nonprofits to provide some or all of the services that department delivers. The dashboard below shows total spending by each department on nonprofit contracts. Use the filter to explore spending by departments in prior fiscal years.

Data notes and sources

The data source is the Supplier Payments dataset on SF OpenBook: https://openbook.sfgov.org. The dataset contains all the purchase orders and payments issued to City suppliers. The data pulled for the dashboards reflect supplier transactions that occurred within each fiscal year. Some payments may be made based on prior fiscal year invoices and data may not reflect payments for invoices received after the fiscal year end. This data will be updated at the close of each fiscal year. Please use SF OpenBook to find current-year data.

The Controller’s Office performs several significant data cleaning steps outlined below. Starting with FY26 data, improvements to how the City's financial system identifies nonprofit suppliers allowed us to simplify the first cleaning step. As a result, Step 1 differs for data through FY25 and data from FY26 onward. Steps 2 and 3 apply to all years. Visit the SF Open Data Portal to download the full, cleaned dataset.

1. Identifying nonprofit suppliers and contracted services

All years: Payments to suppliers may include payments for services to the City, such as memberships, use of space, and passthrough payments to beneficiaries. To identify payments specifically for contracted services delivered by nonprofits, we filtered the SF OpenBook report to only include the following types of goods and services prior to exporting the data: Community Based Org Svcs; Homeless Hsng And Supportv Service; Profess & Specialized Svcs; Professional/Specialized Svcs.

Data through FY25: SF OpenBook provides a filter labeled "Non-Profits Only" (Yes, No), and resulting datasets exported from SF OpenBook include a "Non Profit" column to indicate whether the supplier is a nonprofit (Yes, Blank). Through FY25, this field was not always accurate and excluded about 150 known nonprofits that were not labeled as a nonprofit in the City's financial system. To ensure a complete dataset, we exported a full list of supplier payment data from SF OpenBook with the "Non-Profits Only" field filtered to "No", which provides a list of all supplier payments regardless of nonprofit status. We cleaned this data by adding a new "Nonprofit" column within the dataset and used this column to note a nonprofit status of "CON-marked Nonprofit" for approximately 150 known nonprofit suppliers without this indicator flagged in the financial system, in addition to any nonprofits already accurately flagged in the system. We then filtered the full dataset using the new "Nonprofit" column.

Data from FY26 onward: The City has since improved how nonprofit status is recorded in its financial system, and this status now feeds the "Non-Profits Only" filter in SF OpenBook. Because of this, the manual identification step above is no longer needed. Starting with FY26, we export supplier payment data from SF OpenBook with the "Non-Profits Only" filter set to "Yes", along with the types of goods and services filter described above. Nonprofit status in the City's financial system may change over time as supplier information is updated.

2. While the University of California, San Francisco (UCSF) is technically not-for-profit, a university's financial management is very different from traditional nonprofit service providers, and the City's agreement with UCSF includes hospital staffing in addition to contracted services to the public. As such, we have excluded payments to UCSF from all dashboards. There are divisions of UCSF that provide more traditional contracted services, but these cannot be clearly identified in the data. Note that this may reflect an underrepresentation of overall spending.

3. We also exclude several specific contracts that are predominantly "pass through" payments where the nonprofit provider receives funds that they disperse to other agencies, such as for childcare or workforce subsidies. These types of contracts are substantially different from contracts where the nonprofit is providing direct services to San Franciscans. As of reporting for FY26 data, these dashboards exclude the following contract numbers related to pass-through payments for childcare subsidies: 1000026979, 1000028798, 1000027035, 1000008034, 1000034737.

Because of these additional data cleaning steps, the totals and amounts reflected in this dashboard may differ from other reporting on the City’s nonprofit spending.

View source data

Detailed Spending by Department

The dashboard below provides more detailed information about each department’s spending on nonprofit services. Use the filter to select a department. The dashboard shows annual spending since FY22 for the selected department and total payments to each nonprofit by the selected department each year.

Data notes and sources

The data source is the Supplier Payments dataset on SF OpenBook: https://openbook.sfgov.org. The dataset contains all the purchase orders and payments issued to City suppliers. The data pulled for the dashboards reflect supplier transactions that occurred within each fiscal year. Some payments may be made based on prior fiscal year invoices and data may not reflect payments for invoices received after the fiscal year end. This data will be updated at the close of each fiscal year. Please use SF OpenBook to find current-year data.

The Controller’s Office performs several significant data cleaning steps outlined below. Starting with FY26 data, improvements to how the City's financial system identifies nonprofit suppliers allowed us to simplify the first cleaning step. As a result, Step 1 differs for data through FY25 and data from FY26 onward. Steps 2 and 3 apply to all years. Visit the SF Open Data Portal to download the full, cleaned dataset.

1. Identifying nonprofit suppliers and contracted services

All years: Payments to suppliers may include payments for services to the City, such as memberships, use of space, and passthrough payments to beneficiaries. To identify payments specifically for contracted services delivered by nonprofits, we filtered the SF OpenBook report to only include the following types of goods and services prior to exporting the data: Community Based Org Svcs; Homeless Hsng And Supportv Service; Profess & Specialized Svcs; Professional/Specialized Svcs.

Data through FY25: SF OpenBook provides a filter labeled "Non-Profits Only" (Yes, No), and resulting datasets exported from SF OpenBook include a "Non Profit" column to indicate whether the supplier is a nonprofit (Yes, Blank). Through FY25, this field was not always accurate and excluded about 150 known nonprofits that were not labeled as a nonprofit in the City's financial system. To ensure a complete dataset, we exported a full list of supplier payment data from SF OpenBook with the "Non-Profits Only" field filtered to "No", which provides a list of all supplier payments regardless of nonprofit status. We cleaned this data by adding a new "Nonprofit" column within the dataset and used this column to note a nonprofit status of "CON-marked Nonprofit" for approximately 150 known nonprofit suppliers without this indicator flagged in the financial system, in addition to any nonprofits already accurately flagged in the system. We then filtered the full dataset using the new "Nonprofit" column.

Data from FY26 onward: The City has since improved how nonprofit status is recorded in its financial system, and this status now feeds the "Non-Profits Only" filter in SF OpenBook. Because of this, the manual identification step above is no longer needed. Starting with FY26, we export supplier payment data from SF OpenBook with the "Non-Profits Only" filter set to "Yes", along with the types of goods and services filter described above. Nonprofit status in the City's financial system may change over time as supplier information is updated.

2. While the University of California, San Francisco (UCSF) is technically not-for-profit, a university's financial management is very different from traditional nonprofit service providers, and the City's agreement with UCSF includes hospital staffing in addition to contracted services to the public. As such, we have excluded payments to UCSF from all dashboards. There are divisions of UCSF that provide more traditional contracted services, but these cannot be clearly identified in the data. Note that this may reflect an underrepresentation of overall spending.

3. We also exclude several specific contracts that are predominantly "pass through" payments where the nonprofit provider receives funds that they disperse to other agencies, such as for childcare or workforce subsidies. These types of contracts are substantially different from contracts where the nonprofit is providing direct services to San Franciscans. As of reporting for FY26 data, these dashboards exclude the following contract numbers related to pass-through payments for childcare subsidies: 1000026979, 1000028798, 1000027035, 1000008034, 1000034737.

Because of these additional data cleaning steps, the totals and amounts reflected in this dashboard may differ from other reporting on the City’s nonprofit spending.

View source data

Nonprofit Spending Overview

The City contracts with hundreds of nonprofits every year. Nonprofits invoice the City for the services they perform. Then, the City issues payments to the nonprofits. This dashboard shows the actual payments made to nonprofits for services delivered. It also shows the number of contracts each nonprofit had that year and the number of departments they contracted with. Use the filter to see data from previous fiscal years. 

Data notes and sources

The data source is the Supplier Payments dataset on SF OpenBook: https://openbook.sfgov.org. The dataset contains all the purchase orders and payments issued to City suppliers. The data pulled for the dashboards reflect supplier transactions that occurred within each fiscal year. Some payments may be made based on prior fiscal year invoices and data may not reflect payments for invoices received after the fiscal year end. This data will be updated at the close of each fiscal year. Please use SF OpenBook to find current-year data.

The Controller’s Office performs several significant data cleaning steps outlined below. Starting with FY26 data, improvements to how the City's financial system identifies nonprofit suppliers allowed us to simplify the first cleaning step. As a result, Step 1 differs for data through FY25 and data from FY26 onward. Steps 2 and 3 apply to all years. Visit the SF Open Data Portal to download the full, cleaned dataset.

1. Identifying nonprofit suppliers and contracted services

All years: Payments to suppliers may include payments for services to the City, such as memberships, use of space, and passthrough payments to beneficiaries. To identify payments specifically for contracted services delivered by nonprofits, we filtered the SF OpenBook report to only include the following types of goods and services prior to exporting the data: Community Based Org Svcs; Homeless Hsng And Supportv Service; Profess & Specialized Svcs; Professional/Specialized Svcs.

Data through FY25: SF OpenBook provides a filter labeled "Non-Profits Only" (Yes, No), and resulting datasets exported from SF OpenBook include a "Non Profit" column to indicate whether the supplier is a nonprofit (Yes, Blank). Through FY25, this field was not always accurate and excluded about 150 known nonprofits that were not labeled as a nonprofit in the City's financial system. To ensure a complete dataset, we exported a full list of supplier payment data from SF OpenBook with the "Non-Profits Only" field filtered to "No", which provides a list of all supplier payments regardless of nonprofit status. We cleaned this data by adding a new "Nonprofit" column within the dataset and used this column to note a nonprofit status of "CON-marked Nonprofit" for approximately 150 known nonprofit suppliers without this indicator flagged in the financial system, in addition to any nonprofits already accurately flagged in the system. We then filtered the full dataset using the new "Nonprofit" column.

Data from FY26 onward: The City has since improved how nonprofit status is recorded in its financial system, and this status now feeds the "Non-Profits Only" filter in SF OpenBook. Because of this, the manual identification step above is no longer needed. Starting with FY26, we export supplier payment data from SF OpenBook with the "Non-Profits Only" filter set to "Yes", along with the types of goods and services filter described above. Nonprofit status in the City's financial system may change over time as supplier information is updated.

2. While the University of California, San Francisco (UCSF) is technically not-for-profit, a university's financial management is very different from traditional nonprofit service providers, and the City's agreement with UCSF includes hospital staffing in addition to contracted services to the public. As such, we have excluded payments to UCSF from all dashboards. There are divisions of UCSF that provide more traditional contracted services, but these cannot be clearly identified in the data. Note that this may reflect an underrepresentation of overall spending.

3. We also exclude several specific contracts that are predominantly "pass through" payments where the nonprofit provider receives funds that they disperse to other agencies, such as for childcare or workforce subsidies. These types of contracts are substantially different from contracts where the nonprofit is providing direct services to San Franciscans. As of reporting for FY26 data, these dashboards exclude the following contract numbers related to pass-through payments for childcare subsidies: 1000026979, 1000028798, 1000027035, 1000008034, 1000034737.

Because of these additional data cleaning steps, the totals and amounts reflected in this dashboard may differ from other reporting on the City’s nonprofit spending.

View source data

Detailed Spending by Nonprofit

The dashboard below provides detailed information about the payments each nonprofit receives from departments over time. Use the filter to select a nonprofit and view annual spending since FY22 across each department. 

The dashboard includes the option to see contract titles under each department for the selected nonprofit. Click on the plus icon (+) to the left of the department name in the table below the graph to see contract titles. Contract titles can provide more information about what services a nonprofit delivers. However, contract titles are not standardized and one contract may include many services. The title alone will not always describe what services the nonprofit provides under each contract. 

Data notes and sources

The data source is the Supplier Payments dataset on SF OpenBook: https://openbook.sfgov.org. The dataset contains all the purchase orders and payments issued to City suppliers. The data pulled for the dashboards reflect supplier transactions that occurred within each fiscal year. Some payments may be made based on prior fiscal year invoices and data may not reflect payments for invoices received after the fiscal year end. This data will be updated at the close of each fiscal year. Please use SF OpenBook to find current-year data.

The Controller’s Office performs several significant data cleaning steps outlined below. Starting with FY26 data, improvements to how the City's financial system identifies nonprofit suppliers allowed us to simplify the first cleaning step. As a result, Step 1 differs for data through FY25 and data from FY26 onward. Steps 2 and 3 apply to all years. Visit the SF Open Data Portal to download the full, cleaned dataset.

1. Identifying nonprofit suppliers and contracted services

All years: Payments to suppliers may include payments for services to the City, such as memberships, use of space, and passthrough payments to beneficiaries. To identify payments specifically for contracted services delivered by nonprofits, we filtered the SF OpenBook report to only include the following types of goods and services prior to exporting the data: Community Based Org Svcs; Homeless Hsng And Supportv Service; Profess & Specialized Svcs; Professional/Specialized Svcs.

Data through FY25: SF OpenBook provides a filter labeled "Non-Profits Only" (Yes, No), and resulting datasets exported from SF OpenBook include a "Non Profit" column to indicate whether the supplier is a nonprofit (Yes, Blank). Through FY25, this field was not always accurate and excluded about 150 known nonprofits that were not labeled as a nonprofit in the City's financial system. To ensure a complete dataset, we exported a full list of supplier payment data from SF OpenBook with the "Non-Profits Only" field filtered to "No", which provides a list of all supplier payments regardless of nonprofit status. We cleaned this data by adding a new "Nonprofit" column within the dataset and used this column to note a nonprofit status of "CON-marked Nonprofit" for approximately 150 known nonprofit suppliers without this indicator flagged in the financial system, in addition to any nonprofits already accurately flagged in the system. We then filtered the full dataset using the new "Nonprofit" column.

Data from FY26 onward: The City has since improved how nonprofit status is recorded in its financial system, and this status now feeds the "Non-Profits Only" filter in SF OpenBook. Because of this, the manual identification step above is no longer needed. Starting with FY26, we export supplier payment data from SF OpenBook with the "Non-Profits Only" filter set to "Yes", along with the types of goods and services filter described above. Nonprofit status in the City's financial system may change over time as supplier information is updated.

2. While the University of California, San Francisco (UCSF) is technically not-for-profit, a university's financial management is very different from traditional nonprofit service providers, and the City's agreement with UCSF includes hospital staffing in addition to contracted services to the public. As such, we have excluded payments to UCSF from all dashboards. There are divisions of UCSF that provide more traditional contracted services, but these cannot be clearly identified in the data. Note that this may reflect an underrepresentation of overall spending.

3. We also exclude several specific contracts that are predominantly "pass through" payments where the nonprofit provider receives funds that they disperse to other agencies, such as for childcare or workforce subsidies. These types of contracts are substantially different from contracts where the nonprofit is providing direct services to San Franciscans. As of reporting for FY26 data, these dashboards exclude the following contract numbers related to pass-through payments for childcare subsidies: 1000026979, 1000028798, 1000027035, 1000008034, 1000034737.

Because of these additional data cleaning steps, the totals and amounts reflected in this dashboard may differ from other reporting on the City’s nonprofit spending.

View source data

More Information