Skip to content
flowpeek
flowpeek
Try free for 30 daysBook a demo(30 minutes online, opens in a new tab)

30 days for PLN 0 · first payment after the trial · cancel anytime

flowpeekresources / guides / Marketing

How much should an online store spend on ads? Set your budget

You'll set an ad budget based on your margin and sales goal, plan a test of a new channel and check when increasing spend stops paying off.

11 min readUpdated: MarketingPractice

Short answer

The key answer

There's no single right percentage of revenue to spend on ads. The budget is best calculated bottom-up: first work out how much you can pay for one order and still have something left after costs, then multiply that amount by the number of orders you want ads to bring in. Treat a percentage of sales as a check, not as the source of the figure. Start a new channel with a test budget and a written evaluation criterion, and increase spend in steps while checking the cost of additional orders.

  • Maximum cost per order calculated from your margin
  • A budget based on a sales goal, checked against a percentage of revenue
  • Channel testing and the rule of scaling spend in steps

Key terms in plain language

Cost per order
Ad spend divided by the number of orders from ads in the same period.
Variable costs
Costs that grow with every order: goods, shipping, payments and handling.

1. Calculate how much you can pay for one order.

The starting point is your average order value and the share that remains after variable costs other than ads: goods, shipping, payments and handling. Worked example: an average order of PLN 200, with 35% left after variable costs, i.e. PLN 70. That PLN 70 is the break-even point. If it spends more than that on ads per order, the store is subsidizing its sales before fixed costs even come into play.

The break-even point alone shouldn't be the target. If each order is supposed to leave PLN 25 for fixed costs and profit, the target cost per acquired order is PLN 45. You can express the same calculation as ROAS: PLN 200 / PLN 45 gives about 4.4. If your own data shows that customers come back and buy again, you can accept a higher cost for the first order, but only based on actual repeat purchases, not an assumption.

1. Calculate how much you can pay for one order.
ItemWorked example
Average order valuePLN 200
Left after variable costs other than ads (35%)PLN 70
Amount for fixed costs and profitPLN 25
Target cost per acquired orderPLN 45
Corresponding ROASabout 4.4

2. Set the budget from your sales goal.

Once you know your target cost per order, the budget follows from the goal. Let's assume you want paid campaigns to bring in 150 orders a month at a cost of PLN 45. The budget is then 150 × PLN 45 = PLN 6,750. Don't count orders that come in without paying for clicks, e.g. from search, the newsletter or direct visits, toward the goal: ads don't need to buy them.

Convert the monthly amount into a daily one. In Google Ads, the budget is set as an average daily budget, and for most campaigns the system can spend up to twice that on a given day. Over a month, however, it won't exceed 30.4 × the average daily budget. For PLN 6,750, that's about PLN 222 a day. Also plan a reserve for periods when customers buy more, e.g. before the holidays, instead of splitting the annual amount evenly across every month.

3. Check the result against a percentage of sales.

The percentage-of-revenue method is simple: you plan for ads to take up a certain share of revenue. As the only source of the figure, it can be misleading, because it ignores margin and whether extra spend will actually bring in sales. It's useful as a check, though. Divide the planned budget by the planned revenue and see whether the result stays within what your margin allows.

Public data shows a wide spread. IRP Commerce reports that for stores on its platform in the UK and Ireland, marketing costs averaged 9.29% of revenue in September 2026, ranging from 1.35% to 14.60% across categories. That's a different market and a single platform, and sales there are attributed to channels on a last-click basis. The figure shows the scale of differences between industries, not the level your store should adopt.

4. Plan a test budget for a new channel.

Start a new channel or campaign with a test that has a written duration, amount and evaluation criterion, e.g. "four weeks, PLN 3,000, cost per order no more than PLN 60, i.e. at least 50 orders". Write the criterion down before launch. After the fact, it's easy to call any result a success, or to stop the test after two weaker days.

The test budget should be large enough to bring in a few dozen orders, not just a few. Ad platforms optimize campaigns based on conversions, and with only a handful of orders, the result mostly comes down to chance. If your budget doesn't allow for that, test fewer campaigns at once instead of splitting the amount into many small parts. Record test spend and results separately, so they don't get mixed up with campaigns that are already running.

5. Split the budget across channels according to their role.

Channels play different roles. Brand campaigns and remarketing reach people who already know your offer, so they often have a lower cost per order. Campaigns aimed at new audiences are usually more expensive, but without them, over time you run out of people to retarget. So don't judge all channels by a single threshold. Set a separate target cost for acquiring new customers and for selling to people who already know the store.

Before splitting the budget, check where the numbers come from. Each ad platform counts conversions its own way, and several platforms can claim the same purchase at once, so the sum across ad platforms isn't your store's order count. In Flowpeek, you set costs from connected ad accounts against sales attributed using one attribution model, applying the same rules to all channels.

Measurement comparison in Flowpeek: store tracker, Google Analytics 4, Google Ads and Meta Ads with sessions, orders, revenue, cost and ROAS
Comparison of data sources in the app. Here Google Ads reports 163.5 conversions and a ROAS of 14.19×, while the Flowpeek tracker shows 343 orders for the same date range. Before splitting your budget, check which source the count comes from and what rule it uses to attribute sales.

6. Increase the budget in steps and watch the cost of additional orders.

When a campaign hits its target, it's tempting to double the budget. But the extra money often reaches less interested audiences, so additional orders cost more than the existing ones. The average cost per order can still look good, even though each additional order already costs more than the break-even point.

Worked example: at PLN 6,000, a campaign brings in 120 orders, or PLN 50 per order. After raising the budget to PLN 9,000, it brings in 160 orders. The average cost is PLN 56.25, within the PLN 70 break-even point. However, the extra PLN 3,000 brought in 40 orders, or PLN 75 each, which is above the break-even point. So increase the budget in steps, e.g. by a fifth, and after each step calculate the cost of additional orders over a comparable period.

6. Increase the budget in steps and watch the cost of additional orders.
BudgetOrdersAverage cost per orderCost per additional order
PLN 6,000120PLN 50not applicable
PLN 9,000160PLN 56.25PLN 3,000 / 40 = PLN 75

Common mistakes

01

A percentage of revenue as the only basis for the budget

The same percentage means profit in one store and a loss in another. Start from your margin and cost per order.

02

Adding up conversions from several ad platforms

The same purchase can be claimed by more than one platform. Compare channels based on your store's orders.

03

Judging a test after a few days

With only a handful of orders, the result comes down to chance. Judge the test after the planned duration and number of orders.

For your next review

Checklist

  • I know my average order value and the share left after variable costs.
  • I have a target cost per order written down, separately for new and returning customers.
  • The budget follows from a sales goal, and the percentage of revenue serves as a check.
  • The new channel test has a duration, amount and evaluation criterion written down before launch.
  • After increasing the budget, I calculate the cost of additional orders, not just the average.

Now your store

Calculate the budget for next month.

  1. 1

    From your store data, write down the average order value and the variable costs other than ads.

  2. 2

    Set the target cost per order and the number of orders paid campaigns should bring in.

  3. 3

    Multiply the two numbers, check the budget's share of planned revenue and split the amount across campaigns according to their role.

From report to decision

Example budget plan

A worked example for a fictional store, with a single currency and simplified costs. It doesn't describe any client's results.

Order economics
An average of PLN 200, with PLN 70 left after variable costs. Target cost per order: PLN 45.
Goal
150 orders a month from paid campaigns, excluding sales from channels without pay-per-click costs.
Budget
150 × PLN 45 = PLN 6,750, or an average of about PLN 222 a day in Google Ads.
Percentage check
Planned revenue from campaigns is PLN 30,000. The budget is 22.5% of that amount, which corresponds to a cost of PLN 45 on a PLN 200 order.
Split
One part for acquiring new customers with a higher cost threshold, another for remarketing and brand campaigns with a lower one.

The budget has a rationale you can verify after a month: the number of orders, their cost and the result after costs. If one of the assumptions doesn't hold, you know which number to change.

Questions and answers

What percentage of revenue should an online store spend on ads?

There's no single value. The percentage depends on margin, industry and the store's stage of growth. Calculate it from your target cost per order and average order value instead of adopting someone else's ratio.

What budget should I start advertising with?

One that can bring in a few dozen orders at your target cost per order within the planned test period. A smaller budget is better focused on a single campaign.

Will a bigger budget always increase sales?

It usually brings more orders, but each additional one tends to cost more. After a change, calculate the cost of additional orders and compare it with your break-even point.

Read the next guide.

All guides

Free · 30 minutes · online

GA4, your store and your ads show different numbers? We'll check it with you.

We compare one month of sales across your tools and point out three fixes to your measurement. No strings attached. What we check

Book a free review(online meeting, opens in a new tab)

30 days on your own data

Set your ad costs against your store's sales.

In a 30-day Flowpeek trial, you'll connect campaign costs with orders and compare channels using one attribution model. We'll handle the setup within 48 hours, and in a consultation we'll discuss which channel to start with.

  • No fixed-term contract
  • We set everything up for you in 48 h
  • App servers in Germany (EU)
  • Cancel anytime