SEO reseller pricing: markup, margin and delivery costs
SEOReseller guide · Publishes · 4 min read
Short answer
Price a resold SEO service from your total cost of delivering it, not from your partner's price alone. Add the partner's fee to your own account management, QA, reporting and payment costs for the same period, then choose a margin target and work out the price from that. Margin and markup are different numbers; decide which one you set targets in and stick to it.
Key takeaways
- Total cost = partner fee + your own account, QA, reporting and payment costs for the same period.
- Margin divides contribution by price; markup divides it by cost. A 50% markup is a 33.3% margin.
- Work out the price for a target margin as total cost ÷ (1 − margin).
- Put units and exclusions in the client proposal, not just a monthly figure.
SEOReseller sells white-label SEO delivery, so we have a commercial interest in this topic. The method below works the same whichever partner you use.
Start with total cost, not the partner's invoice
The most common reseller pricing mistake is treating the fulfillment invoice as the whole cost. It isn't. Somebody on your side still briefs the work, answers client questions, checks the report before it goes out and chases approvals. Those hours are real even if nobody tracks them.
For each client and each period (usually a month or a project), list everything it costs you to deliver that one account:
- Fulfillment cost: what your delivery partner charges for the agreed scope, including any third-party costs they pass through.
- Account management: time spent briefing, answering the client, attending calls and handling changes. Use your real internal hourly cost, not your billing rate.
- Quality assurance and reporting: reviewing deliverables, adding your commentary, rebranding where needed.
- Payment and tool costs: card or invoice processing fees, and any tool seats used only for this account.
Margin and markup are not the same number
Both describe the gap between what you pay and what you charge, but they divide by different things. Mixing them up is how agencies end up earning less than they planned.
contribution = price − total cost margin = contribution ÷ price markup = contribution ÷ total cost price for a target margin m = total cost ÷ (1 − m)
| Markup on cost | Equivalent margin on price |
|---|---|
| 25% | 20.0% |
| 50% | 33.3% |
| 100% | 50.0% |
If someone tells you "we work on 50%", ask which one they mean. A 50% markup leaves a third of the price as contribution; a 50% margin leaves half.
A worked example
| Item | Amount |
|---|---|
| Fulfillment cost | 1,200.00 |
| Account management: 3 hours at an internal cost of 60/hour | 180.00 |
| QA and report review: 1 hour at 60/hour | 60.00 |
| Payment processing, estimated | 60.00 |
| Total cost | 1,500.00 |
At a client price of 2,000, contribution is 500. That is a 25% margin, or a 33.3% markup. Notice that the fulfillment-only view would have shown a contribution of 800, which overstates it by 60%.
If your target is a 35% margin, the price that reaches it is 1,500 ÷ 0.65 ≈ 2,307.69. Whether a client will pay that is a separate question about value and positioning; the arithmetic only tells you what the number needs to be. You can run your own figures in the reseller margin calculator, which keeps everything in your browser.
Project pricing versus recurring pricing
Project work, such as an audit or a local setup, has a defined end. Price it so the single project covers its own costs, including the time to sell it. Recurring work, such as a monthly quantity of placements, spreads setup effort over several months, but your account management hours rarely shrink as much as you expect after month one.
- For projects, include the scoping and sales time you'd otherwise absorb.
- For recurring work, price month one separately if onboarding takes noticeably more effort.
- In both cases, put the unit (placements, locations, sites) and the exclusions in writing so the client knows what the price buys.
Pricing mistakes that quietly erase contribution
- Quoting the client before the partner has confirmed the scope is deliverable in that niche and market.
- Selling "unlimited" or outcome-based packages on top of unit-priced fulfillment.
- Absorbing publisher fees or replacement costs that weren't in the original quote.
- Forgetting payment-processing fees on large invoices.
- Setting a target in markup and reviewing results in margin, or the other way round.
Before you send a client price
- You have a written fulfillment quote with units, exclusions and third-party costs.
- You've estimated your own hours for this account at your internal cost.
- Payment and tool costs are included.
- You know whether your target is a margin or a markup.
- The client proposal states units and exclusions, not just a monthly figure.
- You haven't promised rankings, traffic or anything your partner doesn't deliver.
For how we structure our own quotes, see how SEO reseller pricing works. To see what the client actually receives for the price, look at the sample reports.