How to Add a Donation Form to Shopify
Shopify is built to sell products, not to take donations. If you run a nonprofit or social enterprise on it, you have a few native options that mostly disappoint and one that actually gives you a real donation form. Here is the honest map.
Quick answer
- Shopify natively treats a donation as a product or a checkout round-up.
- Those options are limited: no custom amounts, no recurring, no records.
- Embedding a real donation form on a page is the flexible route.
You run a Shopify store. Maybe you are a nonprofit selling merch to fund the mission, maybe a social enterprise that wants to let customers chip in beyond their purchase. Either way you go looking for the "donations" feature and discover Shopify does not really have one.
That is not an oversight, it is what Shopify is. It is an ecommerce platform. Its entire model is products, carts, and checkout. A donation, with a custom amount and maybe a monthly option, does not fit that mold cleanly, so the native workarounds all bend a product-shaped tool into a donation-shaped job.
There are a few ways to take donations on Shopify, and they are genuinely not equal. Here is what each one actually does, where it breaks, and how to get a real donation form onto your store when you need one.
The native options (and where they fall short)
Shopify gives you two broad ways to take money that look like donations if you squint.
The "donation product"
You create a product called "Donation" and either set a fixed price or use a few price variants (10, 25, 50 dollars). Customers add it to the cart and check out like any other item. It works, and it costs nothing extra. But it inherits every limit of being a product: no true custom amount field, the donor goes through a cart-and-checkout flow built for shipping physical goods, and there is no native recurring option. It also lands in your order reports as a sale, not a gift, which your bookkeeper will eventually have feelings about.
Round-up apps at checkout
These apps add a "round up to the nearest dollar for charity" or "add 2 dollars to support our cause" prompt during checkout. They are excellent for what they are, capturing small add-on gifts from people already buying. But they only fire at checkout, so a visitor who is not buying anything has no way to give, and the amounts are small by design.
Both are fine as supplements. Neither is a real donation form, and neither gives you a clean donor record or recurring giving.
The approaches, side by side
Here is the honest comparison so you can match the method to what you actually need.
| Approach | Custom amount? | Recurring? | Best for |
|---|---|---|---|
| Donation product (variants) | No, fixed tiers | No (without extra apps) | Quick "buy a donation" with merch |
| Checkout round-up app | Round-up only | No | Small add-on gifts from buyers |
| Embedded donation form (on a page) | Yes | Yes | A real, standalone "Donate" page |
| Stripe Payment Link button | Yes | Yes, but hosted/off-brand | Bare-minimum, do-not-care-about-design |
If all you want is to let buyers toss in a few extra dollars, a round-up app is the right tool and you can stop reading. If you want a dedicated donate page where anyone can give any amount, optionally monthly, and you want the gift recorded as a donation, you want the embedded form. That is the rest of this guide.
Embedding a real donation form on a Shopify page
The flexible route is to put an actual donation form on a Shopify page, separate from the store checkout. Shopify lets you do this; you just need to know where the code goes. There are two main paths.
Path 1: a custom Liquid section or page
Shopify themes support custom Liquid, and most let you add a custom HTML/Liquid section to a page. You create a page (say, /pages/donate), drop in your donation tool's embed snippet, and the form renders there. On Online Store 2.0 themes you can add a "Custom Liquid" block through the theme editor without touching theme files directly, which is the cleanest way in.
Path 2: the page editor's HTML mode
For a simpler embed, open the page in the Shopify admin, switch the content editor to HTML mode (the </> button), and paste your snippet there. This is the fastest route for a single line of embed code, though the rich-text editor can occasionally mangle complex markup, so the Custom Liquid block is more reliable for anything beyond one tag.
Either way, the snippet comes from your donation tool, not from Shopify. You build and brand the form in that tool, copy the embed, and paste it in once.
Why bother, if a donation product "works"?
Fair question. If the donation product checks out and the money arrives, why add a separate form?
Because the product route quietly costs you the things that make donations work. There is no real custom amount, so a donor who wants to give 73 dollars cannot. There is no clean recurring option, which means you leave the most valuable kind of giving on the table, and recurring is where the real money is, as covered in adding recurring donations to your website. The donor goes through a shipping-oriented checkout that asks for an address it does not need. And every gift shows up as a sale, muddying your reporting and your receipts.
A purpose-built donation form fixes all of that, custom amounts, suggested tiers, a monthly toggle, a donation-flavored receipt, and a record that reads as a gift. It is the difference between bending Shopify into doing donations and just doing donations next to your Shopify store.
Keeping it on-brand and on-site
Whatever you embed, the goal is the same as anywhere else: the donor finishes giving on your store, on a form that looks like your store, with the money landing in your own account.
Watch out for embeds that are really redirects in disguise, a button that ships the donor off to a hosted page on someone else's domain undercuts the trust your store has built. An inline form that renders right on your /pages/donate page keeps everything coherent. KindLumen's embed works this way, it drops a branded, mobile-first form onto a Shopify page with one snippet, supports custom amounts and monthly giving, and routes funds to your own Stripe. You can see how the embed is structured on the features page.
One last practical note: test the donate page on a phone. A large share of Shopify traffic is mobile, and a donation form that overflows a small screen costs you exactly the gifts you set this up to capture.
Frequently asked questions
Does Shopify have a built-in donation feature?
Not really. Shopify is built around selling products, so the closest native options are creating a "donation product" with fixed price tiers or using a checkout round-up app. Neither offers true custom amounts, recurring giving, or a clean donor record, so most organizations embed a dedicated donation form for that.
How do I add a real donation form to a Shopify page?
Create a page like /pages/donate and add your donation tool’s embed snippet to it, either through a Custom Liquid block in the theme editor on Online Store 2.0 themes, or by switching the page content editor to HTML mode and pasting the snippet. The form comes from your donation tool, not from Shopify.
What is wrong with using a donation product?
It works for quick fixed-amount gifts, but it inherits product limits: no real custom amount, no native recurring option, a shipping-oriented checkout, and every gift recorded as a sale rather than a donation. For a dedicated donate page, an embedded donation form handles all of that properly.
Should I use a checkout round-up app or a donation form?
Both, if you can. A round-up app is great for capturing small add-on gifts from people already buying, but it only fires at checkout. An embedded donation form gives non-buyers a way to give any amount, optionally monthly. They serve different moments, so many stores run both.
Use the research, then choose the right donation setup.
Compare your options, then move into a donation setup your team can launch and maintain with confidence.
Related reading
How to Add a Donation Form to a Webflow Site
Webflow gives you a gorgeous site and exactly zero native ways to take a donation. Here is how to fix that without wrecking your design or shipping donors off to a third-party page.
May 20, 2026
How to Add a Donation Form to Squarespace
Squarespace has a Donation block, and on paper that sounds like the end of the story. It is not. Here is what the native option actually does, where it stops, and how to get a real donation form on your page.
April 15, 2026
How to Add a Donation Form to Wix
Wix has a donation widget built in, which is more than most builders can say. It is also basic and ties you to Wix Payments. Here is the native route, where it caps out, and how to embed something better.
March 11, 2026