Shopify workflow guide for Meta Sales campaigns
How to run Facebook ads from Shopify: setup, budget math and your first Sales campaign
Running Facebook ads from Shopify means connecting your store to Meta once, then making, launching and tracking Sales campaigns for your products from inside the Shopify admin. This guide is for store owners who want a first campaign that counts real purchases, plus a simple rule for deciding if it works.
Can I run Facebook ads directly from Shopify?
Yes. Once your Meta basics exist (a Facebook Page, a Business portfolio, and an ad account with a payment method) and Meta's Facebook & Instagram channel is sending purchase data from your store, an ads app inside Shopify can launch Meta Sales campaigns for you. Adly for Shopify designs the ad from your product photo and launches it with Run as ad. If you want every targeting and bidding lever, build in Meta Ads Manager instead.
The short version of everything below: Meta is where your accounts and tracking live. Shopify, with the right app, is where you can make the ad, launch it and read the results. You still pay Meta for the ads themselves.
Who should take which path
- New store, 1 to 10 productsMake a designed ad from your best product photo and launch it with Run as ad in Adly for Shopify. It is the fewest screens between a product and a live ad.
- One hero product or a launchTest several creatives at once with New campaign in Adly for Shopify: up to 5 ad sets and 6 ads in one Meta campaign.
- Large catalog with steady visitorsAdd an Advantage+ catalog campaign so Meta can show people products from your catalog. Brand the catalog images first.
- Hands-on media buyerBuild in Meta Ads Manager for custom audiences, placements and bid settings. Keep the Facebook & Instagram channel for tracking.
Which Shopify app are you really looking for?
Search the Shopify App Store for Facebook ads and you will see several kinds of app. They do different jobs, and most stores need three or four of those jobs done. Here is the map, with the part Adly for Shopify covers next to each one.
The Meta channel app
Meta's Facebook & Instagram channel connects your pixel and the Conversions API without code and syncs your products into a Meta catalog. Every route on this page relies on it.
With AdlyAdly works alongside it. Run as ad uses the store's Meta pixel, so keep the channel installed and sending data.
Ad creative makers
Turn product photos into ad images and videos, so you are not waiting on a designer for every test.
With AdlyImage Studio ad designs from the product photo, Animate for a short video from a still, UGC creator videos and Scene Studio multi-scene product films, all in your store's brand style.
Campaign launchers
Create and launch Meta campaigns from the Shopify admin, so you open Ads Manager less often.
With AdlyRun as ad on any result, New campaign for full campaigns with up to 5 ad sets and 6 ads, catalog shopping campaigns from a Meta catalog, and an Ads page listing every campaign in the ad account with its results.
Catalog ad designers
Add a branded look to the product images Meta uses in catalog ads.
With AdlyMeta catalog designs: approve one template, Adly applies it to every product and gives you a feed URL for Meta Commerce Manager.
Social posting schedulers
Post product content to your own pages between ad campaigns.
With AdlyPost or schedule any result to your Facebook Page, Instagram, TikTok, LinkedIn and X (X on paid plans), with a caption Adly writes. For the web version of this job, see our guide to scheduling to Meta and Instagram automatically.
Phone apps for checking ads
See spend and results while you are away from the desk.
With AdlyBrands that run their marketing on an Adly account can use Adly for iPhone to make designs and UGC videos, post to five networks, and see Meta ad results without opening Ads Manager.
Adly for Shopify covers jobs 2 to 5 in one app, installed from the Shopify App Store with no separate Adly sign-up. It writes and speaks 60+ languages and picks your store's language from its country. Job 1 stays with Meta's own channel. One tracking source keeps your purchase counts clean, and clean counts matter more than any feature list.
Three routes from a Shopify product to a live Meta ad
Every route uses the same Meta ad account and the same pixel. What changes is where you do the daily work and how much you set by hand.
| Criteria | Meta channel plus Ads Manager | Adly for Shopify plus Meta channel | Ads Manager only |
|---|---|---|---|
| Where you work | Shopify for setup, Ads Manager for every campaign | Shopify admin for creative, launch and results. Meta for the one-time setup | Ads Manager for everything |
| Tracking | The channel connects pixel and Conversions API with no code | The same channel. Run as ad optimizes for purchases with the store's pixel | You set up and test tracking yourself |
| Creative | You bring finished images and videos | Made in the app from your product photos: designs, short videos, UGC videos, multi-scene films | You bring finished images and videos |
| Campaign control | Every objective, audience, placement and bid option | Run as ad: budget, countries, end date. New campaign: up to 5 ad sets and 6 ads. Catalog shopping campaigns | Every objective, audience, placement and bid option |
| Results | Ads Manager. Orders in Shopify | Spend, purchases and ROAS in the app. The Ads page lists every campaign in the ad account | Ads Manager |
| Billing | Meta bills ad spend to your ad account | Meta bills ad spend. The Adly plan is billed by Shopify every 30 days. Adly never charges for ads | Meta bills ad spend to your ad account |
| Best fit | Media buyers who already work in Ads Manager | Owners who want product to live ad without leaving Shopify | Advertisers with tracking handled elsewhere |
Verdict: if you already live in Ads Manager, keep doing that and let the channel handle tracking. If you are also the person packing the orders, the Adly route removes the two slowest parts: making the creative and building the campaign. It is the route we recommend for most small stores. We make it, so test it on one product before you commit.
Meta, Facebook, Instagram, Shopify and the other product names here belong to their owners. Adly is not affiliated with them.
The one-time Meta setup every route needs
Do this once. No Shopify app can skip it, because Meta needs to know who owns the Page, the ad account and the card.
Facebook Page, Business portfolio and ad account
- A Facebook Page for the store. Your ads run under its name. Connect your Instagram account in the same portfolio so ads can run under it too.
- A Business portfolio in Meta Business Suite that owns the Page. It is the newer name for what used to be Business Manager.
- An ad account inside that portfolio. Set its currency to the one your store sells in, so the ROAS math below lines up.
- Admin access for you on all three. Missing permissions are a common reason an app cannot see your ad account.
Payment method, and who bills what
Add a card or other payment method under billing in your ad account. Meta charges your ad spend there, on its own billing schedule.
Your Shopify bill is separate. Shopify bills app plans, including Adly for Shopify, every 30 days. Adly never charges for ads. Expect two lines in your books and keep them apart when you work out profit.
Connect the pixel and Conversions API from Shopify
Install Meta's Facebook & Instagram channel from the Shopify App Store. Inside it, connect your Business portfolio, Page, ad account and pixel. In the channel's data sharing settings you pick a level: Standard, Enhanced or Maximum. Pick Maximum. It sends events from the browser with the pixel and from Shopify's server with the Conversions API.
Sending both is normal. Meta removes the duplicate when the two copies of an event carry the same event name and event ID, and the channel sets those for you. Trouble starts when a third source joins in: old pixel code pasted into the theme, or another app firing its own pixel. Remove those, and do not paste pixel code into your theme files.
Sync your product catalog
The channel also syncs your products into a Meta catalog, which catalog ads need. Three things commonly block the sync: a password page on the store, products that are not made available to the Facebook & Instagram channel, and products with no image, price or stock status. Check the result in Meta Commerce Manager, which lists products with issues.
Check purchase tracking before you spend
- Open your store with ad blockers off and accept the cookie banner. Blockers and declined consent hide events during a test.
- Use Meta Pixel Helper, a browser extension from Meta, or the Test events tab in Meta Events Manager.
- View a product, add it to cart and start checkout. You should see ViewContent, AddToCart and InitiateCheckout.
- After a real order, confirm a Purchase event arrives from both browser and server, and counts once.
If Purchase is missing, fix it before anything else. A Sales campaign learns from that event. Without it, Meta is guessing.
Launch your first Sales campaign from Shopify with Run as ad
Workflow summary
To run a Facebook ad from Shopify with Adly, install Adly for Shopify from the Shopify App Store. No separate Adly account is needed. Pick a product from your catalog and create an ad design or a short video from its product photo, in your store's brand style. Review it on the Results page and, if it beats your current photo, add it to the product's Shopify media in one click. Connect your Meta ad account, choose Run as ad on the result, then set the budget, the countries and an end date. Adly launches a Meta Sales campaign optimized for purchases with your store's Meta pixel, and the ad links to the product page. Spend, purchases and return on ad spend show in the app. Meta bills the ad spend to your ad account, and Adly never charges for ads.
Step 1: Pick the Sales objective and skip Traffic
A Traffic campaign tells Meta to find people who click. A Sales campaign optimized for purchases tells it to find people who buy, using your Purchase event. Cheap clicks from people who never buy are the classic first-campaign trap.
Run as ad in Adly for Shopify launches a Sales campaign optimized for purchases, so this choice is already made for you.
Step 2: Pick a product with room in its margin
Start with one product that already sells without ads and has a healthy margin. Run the break-even math first. Our rule of thumb: a first test is easier when the product's break-even ROAS is under about 2.5, because Meta has room to miss while it learns.
Thin-margin products can still work later, inside a bundle that raises the order value.
Step 3: Make the creative from your product photo
In Adly for Shopify, pick the product from your catalog. You can search, browse by collection, or pick many products at once. Then choose what to make:
- Image Studio ad design: your product photo inside a finished ad layout in your brand style.
- Animate: the same photo turned into a short video.
- UGC creator video: a creator-style video talking about the product. Pick several products and Adly can write a different line for each one.
- Scene Studio: a multi-scene product film that runs hook, product, proof and call to action.
Results land on the Results page, newest first. If one beats your current product photo, add it to the product's Shopify media in one click. An image can become the main photo.
of everything brands on Adly made was a design built around a product photo, across 1,218 brands (Adly platform data, Mar to Nov 2026). In the same data, only 11% of designs were revised before use.
Those numbers describe what brands create on Adly. They say nothing about ad results. They do show that starting from the photo you already have is the normal path, and that most designs go out as made.
One more contrast from the same data: among 263 retail brands, video was 13% of outputs, against 9% across all brands. If you only test static ads, add one short video to the mix so you have something to compare.
A few examples of these formats from Adly's showcase:


Step 4: Connect Meta and set budget, countries and end date
Connect your Meta ad account once. Then choose Run as ad on the result you want. You set three things, and the ad links to the product page.
- Budget: take it from the worksheet in the budget math section. Pick an amount you can leave running for at least 7 days.
- Countries: only places you ship to at a cost buyers will accept. Each extra country spreads a small budget thinner.
- End date: set it 14 days out. It caps spend if you forget, and it gives you a review date.
Testing more than one creative? Use New campaign instead. It builds a full Meta campaign with up to 5 ad sets and 6 ads, so a static design, a short video and a UGC video can run side by side.
Step 5: Write the words
Meta shows a few lines of text with the creative. A plain order works: the problem, what changes with the product, then the action. An illustrative line for a mug set:
Coffee cold before the meeting ends? Double-wall stoneware keeps it warm longer. Two mugs for $48. Order today.
Put the price in the text if it is fair for what you sell. It can filter out clicks from people who would leave at checkout.
Worked example: one first campaign with every setting filled in
- Store
- An illustrative ceramics shop on Shopify, selling to the United States and Canada
- Product
- Two-mug stoneware set, $48
- Margin per order
- $25.26 before ads (see the math below)
- Route
- Adly for Shopify, New campaign
- Objective
- Sales, optimized for purchases with the store's Meta pixel
- Structure
- 1 ad set, 3 ads: an Image Studio design, an Animate video and a UGC creator video
- Budget
- $20 a day
- Countries
- United States, Canada
- End date
- 14 days after launch
- Destination
- The product page
- First review
- Day 8, after 7 untouched days
- Plan usage
- The Starter plan includes 25 images and 16 video units every 30 days as of November 2026. The UGC video uses 2 video units.
Illustrative example, not a forecast. Your prices, costs and results will differ.
The same campaign in Meta Ads Manager: Create, choose Sales, set the conversion location to your website with the pixel's Purchase event, set budget and schedule, choose Advantage+ audience or your own audience, keep automatic placements, then upload each creative with its text and the product URL. Allow extra time for the creative, which you make somewhere else.
One designed product ad or an Advantage+ catalog campaign?
Designed product ads find new buyers for a few products you choose, with your price, angle and brand look. Advantage+ catalog ads let Meta pick products from your catalog for each person, which suits large catalogs and returning visitors. Many stores use the first to bring people in and the second to bring them back.
| Your store | Start with | Why |
|---|---|---|
| 1 to 10 products, or one hero product | Designed single product ads | You control the message, and creative quality matters more than variety |
| A launch, or a product that needs explaining | A Scene Studio film or a UGC video | A hook, proof and call to action need more than one frame |
| 11 to 50 products | Designed ads for your 2 or 3 best sellers, then catalog ads as visitors grow | Best sellers carry the test while Meta collects browsing data |
| 50+ products and steady site traffic | Catalog ads for people who viewed products, plus designed ads for new buyers | Meta can match a specific product to a specific person |
When a designed product ad wins
When you have a clear best seller, a launch, a bundle or an offer. The ad can carry your price and your angle. Plain catalog images often look like every other store selling the same item.
When catalog ads earn their place
When you have many products and enough visitors that Meta has browsing data to work with. A catalog campaign can show someone the exact item they left behind. In Adly for Shopify, New campaign can build a catalog shopping campaign from your Meta catalog.
Give catalog images your brand look without breaking the feed
The weak spot of catalog ads is the image: a product on white, often the same supplier photo other stores use. Adly for Shopify's Meta catalog designs handle this. You approve one template, Adly applies it to every product, and you get a feed URL to add in Meta Commerce Manager. Your products stay the same products. The images get the branded design.
One caution: replace the catalog's existing data source with the new feed URL. Adding it as a second source with the same product IDs gives Meta two versions of every product. For the full process, read our guide to designing Meta catalog images from product feeds. If you are weighing a dedicated catalog design tool, our Confect.io vs Adly catalog ads comparison covers that choice.
Run both: new buyers and returning visitors
A simple two-campaign setup for a mid-size catalog: one Sales campaign with designed ads for two or three best sellers, aimed at new buyers, and one catalog campaign with branded catalog images for people who already viewed products. Judge both against the same break-even ROAS, worked out from your average order value.
How much should a Shopify store spend on Facebook ads?
Spend follows margin. Work out what one order leaves you before ads: that is the most you can pay Meta for a sale and still break even. Then pick a daily budget that buys enough purchases in 7 days to judge the ad.
Work out margin per order
| Line | Product A: mug set | Product B: phone case |
|---|---|---|
| Price | $48.00 | $30.00 |
| Product cost | $14.00 | $16.00 |
| Shipping you pay | $7.00 | $6.00 |
| Payment fees (assumed 3% plus $0.30) | $1.74 | $1.20 |
| Margin per order before ads | $25.26 | $6.80 |
| Break-even ROAS | 1.90 | 4.41 |
| Break-even cost per purchase | $25.26 | $6.80 |
Illustrative numbers. The fee line is an assumption, so use the fees shown on your own payouts.
Break-even ROAS and target cost per purchase
Break-even ROAS = price / margin per order
Break-even cost per purchase = margin per order
Target cost per purchase = margin per order minus the profit you want per order
For Product A, keeping $10 a sale means a target cost per purchase of $15.26 and a target ROAS of 3.15 ($48 / $15.26).
Now run both products at the same 3.0 ROAS. Product A spends $16 to win each $48 sale and keeps $9.26. Product B spends $10 to win each $30 sale and loses $3.20. Same ROAS, opposite results. A single benchmark like 2x or 4:1 cannot tell you if your ads work. Your margin can.
Want the app cost in the math too? Spread the plan over your ad orders. Adly for Shopify's Starter plan is $19 every 30 days as of November 2026, so at 20 ad orders a month it adds $0.95 per order. If orders hold several products, use average order value in place of price.
How many days of budget before you judge?
Meta's delivery goes through a learning phase after launch, and significant edits restart it. So our rule has two parts. Leave the ad set untouched for 7 full days. And do not judge it until it has spent at least 3 times your break-even cost per purchase. Whichever comes later wins.
| Daily budget | Spend in 7 days | Purchases if you hit the $15.26 target | When to judge |
|---|---|---|---|
| $10 | $70 | About 4 to 5 | Day 8, when spend passes $75.78 |
| $20 | $140 | About 9 | Day 8 (spend passed $75.78 on day 4) |
| $40 | $280 | About 18 | Day 8 (spend passed $75.78 on day 2) |
Pause rule: if spend passes 3 times break-even cost per purchase ($75.78 for Product A) with zero purchases, pause. Change the creative or the product before you change the budget.
Scale rule: if cost per purchase stays under target for a full week, raise the budget in modest steps and give each step a few days before the next. $10 a day works for a first look, but it buys few purchases, so treat its verdict as early.
Two bills, kept apart
Your ad spend, charged to the payment method on your ad account.
App plans such as Adly for Shopify, every 30 days. Adly never charges for ads.
| Plan | Price | Images | Video units |
|---|---|---|---|
| Free | $0 | 5 | 4 |
| Starter | $19 | 25 | 16 |
| Growth | $49 | 70 | 40 |
| Pro | $99 | 150 | 80 |
A UGC video uses 2 video units. Usage comes back automatically when a result fails, and you can report a result that is not right within 14 days to get its usage back.
How to read results without leaving Shopify
Adly for Shopify shows spend, purchases and return on ad spend for each campaign, and its Ads page lists every campaign in your ad account. Three numbers decide almost everything.
The three numbers to watch
- Spend: is it pacing to your budget? If spend is near zero after a day, check billing and countries.
- Purchases: the event your Sales campaign optimizes for.
- ROAS: compare it with your own break-even ROAS. Someone else's benchmark comes from someone else's margin.
Why Shopify and Meta show different purchase counts
Expect a gap. Meta credits a purchase to an ad within its attribution setting, which can include some purchases after someone only saw the ad, and it can model some conversions it cannot observe directly. Shopify credits orders by its own rules.
The two counts measure different things. Pick one source for decisions, use it every time, and watch the trend.
What clicks and purchases tell you together
The ad works. The product page, the price or a late shipping surprise loses the sale. Fix the page first. For a bundle or offer that needs its own page, Adly's AI landing page generator builds one in the web app.
The creative is not stopping the scroll. Make a new one from the same photo: a different layout, a short video or a UGC video.
Price and margin are the problem. Test a bundle that raises order value, or switch to a product with more margin.
Scale in modest steps, and keep one new creative in testing so a replacement is ready.
Refresh, pause or scale
Refresh creative when the same ad's clicks fall week after week while spend holds. Pause by the rule above. Scale only on purchases at or under target.
If you also run messages, leads or reach campaigns for the business beyond the store, the AI Facebook Ads Manager in the Adly web app runs those and audits the whole ad account.
Fixes for common Shopify and Meta ad problems
| Symptom | Likely cause | Fix |
|---|---|---|
| Products missing from the Meta catalog | Password page on the store, products not made available to the Facebook & Instagram channel, or missing image, price or stock status | Remove the password page, make products available to the channel, fill the missing fields, then check issues in Commerce Manager after the next sync |
| Pixel Helper shows no events | Ad blocker on, cookie banner declined, or data sharing off in the channel | Test in a clean browser profile, accept cookies, and check the channel's data sharing level |
| Purchases counted twice | Old pixel code in the theme, or a second app firing its own pixel | Remove every pixel source except the channel, then confirm in Events Manager that each Purchase counts once |
| Orders in Shopify, zero purchases in Meta | The channel, the ad account and the campaign use different pixels | Point all three at the same pixel, then place a test order |
| Ad rejected | A Meta advertising policy issue in the text or image | Read the reason in Meta's Account Quality, edit the ad and request a review |
| Ad approved but not spending | Payment method declined, end date passed, or countries too narrow for the budget | Check billing, dates and countries, in that order |
Menu names in Meta and Shopify change. If a path moves, search for the setting name.
Your next step
If your Meta setup is done and Events Manager shows Purchase events, the shortest path is this: pick one product with a break-even ROAS you can beat, make two or three creatives from its photo, and launch a Sales campaign with a 14-day end date. Judge it on day 8.
If tracking is not ready, stop and fix it first. A campaign without purchase data cannot tell you anything.
Questions store owners ask
Does Shopify charge for Facebook ads?
No. Meta charges ad spend to the payment method on your ad account. Shopify bills app plans, such as Adly for Shopify, every 30 days, and Adly never charges for ads.
Do I still need Meta Ads Manager if I use a Shopify app?
For the one-time setup, yes: the Business portfolio, ad account and payment method live in Meta. After that, Adly for Shopify can launch campaigns and show spend, purchases and ROAS inside the Shopify admin. Ads Manager stays available when you want manual edits.
How long should a Facebook ad run before I decide?
Leave it untouched for 7 full days and until it has spent at least 3 times your break-even cost per purchase, whichever comes later. Edits during that time restart Meta's learning.
What ROAS do I need to be profitable?
Your break-even ROAS is price divided by margin per order before ads. A $48 product with a $25.26 margin breaks even at 1.90. A $30 product with a $6.80 margin needs 4.41.
Can I advertise many products at once?
Yes. Build a catalog shopping campaign from your Meta catalog, or use New campaign in Adly for Shopify for up to 6 ads. For creative, you can pick many products at once and Adly can write a different UGC line for each.
Can I run Instagram ads the same way?
Yes. Instagram ads come from the same Meta ad account, pixel and Sales campaign setup as Facebook ads, as long as your Instagram account is connected to your Business portfolio.
