Guide
How to Set Up FUNDING.yml for Your GitHub Repository
How to add a FUNDING.yml file to a GitHub repository so visitors see a Sponsor button with GitHub Sponsors, Open Collective, Ko-fi, Tidelift, Polar, Buy Me a Coffee, or custom funding links.
Contents
A FUNDING.yml file tells GitHub which funding links to show behind the Sponsor button on your repository. Put the file in .github/FUNDING.yml on the default branch, add the funding platforms you use, and GitHub will display the Sponsor button for visitors with access to the repository.
Where the file goes
Create this file:
.github/FUNDING.yml
It must be on the default branch of the repository.
If you maintain many repositories, you can also use a default community health file in a special .github repository for your user or organization. Use a repo-specific FUNDING.yml when a project needs different funding links.
Minimal example
github: your-github-username
open_collective: your-collective-name
ko_fi: your-kofi-username
custom: ["https://example.com/sponsor"]
Keep the file short. Use one primary funding option and one or two secondary options.
Supported keys
Use the keys GitHub supports in FUNDING.yml.
| Platform | Key example |
|---|---|
| GitHub Sponsors | github: USERNAME or github: [USER1, USER2] |
| Open Collective | open_collective: USERNAME |
| Ko-fi | ko_fi: USERNAME |
| Liberapay | liberapay: USERNAME |
| Patreon | patreon: USERNAME |
| IssueHunt | issuehunt: USERNAME |
| LFX Mentorship | community_bridge: PROJECT-NAME |
| Tidelift | tidelift: npm/package-name |
| Polar | polar: USERNAME |
| Buy Me a Coffee | buy_me_a_coffee: USERNAME |
| thanks.dev | thanks_dev: u/gh/USERNAME |
| Custom link | custom: LINK1 or custom: [LINK1, LINK2] |
Use the current GitHub documentation as the source of truth. Supported keys can change.
Tidelift syntax
Tidelift requires package coordinates:
tidelift: npm/my-package
Common platform names include:
npm
pypi
rubygems
maven
packagist
nuget
Custom links
GitHub supports one custom link or an array of custom links.
custom: "https://example.com/sponsor"
or:
custom: ["https://example.com/sponsor", "https://example.com/support"]
If the custom URL includes a colon, quote the URL.
Recommended setup for open source projects
For a solo maintainer:
github: maintainer-name
ko_fi: maintainer-name
custom: ["https://project.example.com/sponsor"]
For a team project:
open_collective: project-name
github: [maintainer-one, maintainer-two]
custom: ["https://project.example.com/funding"]
For a package with Tidelift:
github: maintainer-name
tidelift: pypi/package-name
custom: ["https://project.example.com/support"]
How to enable the Sponsor button
After adding the file, check the repository settings:
- Go to the repository on GitHub.
- Open Settings.
- Find the Sponsorships feature.
- Set up or override funding links.
- Commit the
FUNDING.ymlfile to the default branch. - Check that the Sponsor button appears.
Common mistakes
- Putting the file in the repository root instead of
.github/FUNDING.yml. - Leaving the file on a feature branch.
- Using an unsupported key name.
- Linking to platforms that are not configured yet.
- Adding too many options.
- Forgetting to update the README funding note.
FAQ
Does FUNDING.yml collect money directly?
No. It only tells GitHub which funding links to show. Payments happen on the linked platforms.
Can I add more than one GitHub Sponsors account?
Yes. GitHub supports multiple sponsored developers for the github key.
Can I use a custom funding URL?
Yes. Use custom for one custom URL or an array of custom URLs.
Why is the Sponsor button not showing?
Check that the file is named .github/FUNDING.yml, that it is on the default branch, and that sponsorships are enabled in the repository settings.
Related platforms
Related guides
- How to Set Up GitHub Sponsors
- Best Funding Options for Solo Open Source Maintainers
- How to Fund Your Open Source Project in 2026
Not sure which links to include? Try the Sustainability Finder, then add the recommended platforms to your FUNDING.yml file.
Sources checked
- GitHub sponsor button and FUNDING.yml docs: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository