Facebook Says Your ROAS Is 5x But You Can’t Pay Your Suppliers

February 25, 2026
by Cherry Rose

Your Facebook dashboard says 5x ROAS. Your Google Ads dashboard says 4x. Your bank account says you can’t cover next month’s inventory. Average ecommerce ROAS dropped to 2.87:1 in 2025 (Onramp Funds/Varos)—and that number is calculated on tracking data that misses 20–40% of actual conversions. ROAS measures revenue divided by ad spend. It doesn’t subtract product costs, shipping, gateway fees, or returns. You could hit 5x ROAS and still lose money on every sale.

The question isn’t whether your ROAS is “good.” The question is whether your ad spend is actually generating profit—and the only way to know is a revenue reconciliation that starts from your WooCommerce order database, not from what ad platforms tell you.

Why Platform-Reported ROAS Is Structurally Misleading

ROAS has a math problem and an attribution problem. Both work against you.

The math problem: ROAS = Revenue ÷ Ad Spend. That’s it. No cost of goods. No shipping. No payment processing fees. No returns or refunds. A WooCommerce store spending $10K/month on Facebook Ads with 5x ROAS sees $50K in attributed revenue. Sounds profitable. But subtract $25K in COGS, $5K in shipping, $2K in Stripe fees, and $3K in returns—actual profit is $5K. The real return on that $10K ad spend is 0.5x, not 5x.

66% of brands say advertising is becoming less profitable without optimization (Marketing LTB, 2025). The first optimization is knowing your actual numbers.

The attribution problem is worse. Facebook uses a default 7-day click, 1-day view attribution window. Google Ads uses a 30-day click window. Both platforms independently claim credit for the same conversion. A customer sees a Facebook ad on Monday, clicks a Google ad on Wednesday, and buys on Friday. Facebook claims a view-through conversion. Google claims a click-through conversion. Your WooCommerce database shows one $80 order. Your ad dashboards show $160 in attributed revenue.

68% of multi-touch attribution models over-credited digital channels in 2025 (MarTech Series). Your dashboards aren’t slightly off—they’re structurally inflated.

The Double-Counting Math That Hides Your Real Numbers

Here’s a concrete example. A WooCommerce store runs Facebook Ads and Google Ads with $10K monthly spend on each:

  • Facebook reports: $50K revenue (5x ROAS)
  • Google reports: $40K revenue (4x ROAS)
  • Combined platform claims: $90K revenue
  • Actual WooCommerce revenue: $35K

That’s $90K in claimed revenue against $35K in actual sales. The platforms over-reported by 157%. And that $35K is revenue, not profit. After COGS ($15K), shipping ($3.5K), gateway fees ($1K), and returns ($2K), actual profit is $13.5K on $20K total ad spend. Real combined ROAS: 1.75x—not the 5x or 4x the dashboards promised.

49% of Meta advertisers report iOS tracking changes still hurt their ad performance (Marketing LTB, 2025). The data feeding your ROAS calculations is incomplete before the double-counting even starts.

You may be interested in: WooCommerce Dashboard Chaos: One Source of Truth

How to Build a Revenue Reconciliation for Your WooCommerce Store

Revenue reconciliation means starting from ground truth—your actual order data—and working backward to find what each marketing channel actually contributed. Here’s the methodology:

Step 1: Establish Ground Truth

Your WooCommerce database is the single source of truth. Export completed orders for the period: order total, order date, items purchased, shipping cost, payment method, and refund status. Cross-reference this total against your payment processor (Stripe, PayPal, Square) to verify. If WooCommerce says $35K and Stripe says $34.2K, investigate the gap before proceeding.

Step 2: Calculate True Profit

From your verified revenue total, subtract:

  • Cost of goods sold (COGS): What you paid for the products
  • Shipping costs: Actual postage and handling, not what you charged the customer
  • Gateway fees: Stripe charges 2.9% + $0.30 per transaction. PayPal is similar.
  • Returns and refunds: The revenue that came back
  • Platform fees: WooCommerce extensions, hosting costs attributable to the store

The number left is your actual gross profit. This is the real number that ROAS should be measured against.

Step 3: Attribute Orders to Channels

This is where it gets difficult—and where most store owners give up. You need to assign each order to the marketing channel that actually drove it. UTM parameters help if you’ve been consistent with tagging. WooCommerce order notes and referral data can fill gaps. The key: use one attribution method consistently, and never let two platforms claim the same order.

67% of data professionals don’t trust their own data for decision-making (Precisely/Drexel University, 2025). Revenue reconciliation is how you build data you can trust.

Step 4: Calculate Profit Per Channel

For each channel, divide the attributed gross profit by the actual ad spend on that channel. This is your true profit-based ROAS. It will be lower than what the platforms report—often dramatically lower. But it’s the number that tells you whether a channel is worth your money.

You may be interested in: GA4 Data-Driven Attribution Is a Black Box: How to Take Control

Why MER Beats Per-Channel ROAS for Budget Decisions

Marketing Efficiency Ratio (MER) sidesteps the double-counting problem entirely. MER = Total Revenue ÷ Total Marketing Spend. One revenue number. One spend number. No platform can inflate it.

If your WooCommerce store generated $100K in revenue last month and you spent $25K across all marketing channels, your MER is 4:1. That’s a real number based on real money. It won’t tell you which channel performed best, but it tells you whether your overall marketing investment is profitable—which is what your bank account actually cares about.

Median ROAS for ecommerce brands was just 2.04:1 in 2024 (Upcounting)—meaning half of all ecommerce businesses earn less than $2 back for every $1 spent on ads. If your MER is above that, you’re ahead. If it’s below, no amount of platform-reported ROAS can change that reality.

From Spreadsheets to Automated Reconciliation

Manual reconciliation works at small scale, but it breaks down quickly. Exporting WooCommerce orders, pulling ad spend reports from each platform, matching UTMs, and calculating margins in a spreadsheet is a monthly time sink that most store owners abandon after two or three attempts.

The sustainable approach is automated reconciliation—streaming your raw event data and WooCommerce order data into a single warehouse where the math happens continuously. BigQuery is built for exactly this: raw event data alongside order economics, refreshed automatically, queryable any time you need to know the truth about a channel’s profitability.

Transmute Engine™ streams raw event data to BigQuery alongside WooCommerce order data through its first-party Node.js server running on your subdomain. Because every event flows through your own server before reaching any platform, you get a complete, unfiltered dataset that serves as the foundation for profit-per-channel reporting—no double-counting, no missing conversions from ad blockers.

You may be interested in: BigQuery ML Predicts Which Customers Buy Again

Key Takeaways

  • ROAS measures revenue, not profit. A 5x ROAS can still mean losing money after COGS, shipping, fees, and returns.
  • Platforms double-count conversions. Facebook and Google Ads both claim the same sale using different attribution windows, inflating your reported revenue by 50–150%.
  • Start from WooCommerce order data. Your database and payment processor are the only ground truth. Work backward from there, not forward from platform dashboards.
  • Use MER for budget decisions. Total Revenue ÷ Total Spend gives you one honest number that platforms can’t inflate.
  • Automate with BigQuery. Manual reconciliation doesn’t scale. Streaming order and event data to a warehouse gives you real-time profit-per-channel visibility.
Why does my ad platform report high ROAS but my WooCommerce store barely breaks even?

ROAS measures revenue divided by ad spend—not profit. It excludes product costs, shipping, payment gateway fees, and returns. A 5x ROAS on $10K ad spend means $50K revenue, but after subtracting $25K COGS, $5K shipping, $2K gateway fees, and $3K returns, actual profit is $5K—a real return of just 0.5x on ad spend.

Why do Facebook and Google Ads both claim credit for the same WooCommerce purchase?

Each platform uses its own attribution window. Facebook counts view-through conversions (someone saw your ad, then bought within 7 days), while Google counts at click time. A customer who sees a Facebook ad, clicks a Google ad, then buys gets counted as a conversion by both platforms. With $35K actual revenue, Facebook may claim $50K and Google $40K—$90K in claimed conversions from $35K in real sales.

How do I calculate actual profit per marketing channel for my WooCommerce store?

Start from WooCommerce order data as ground truth. Subtract COGS, shipping, gateway fees, and returns to get net profit. Cross-reference payment processor totals to verify. Then attribute orders to channels using UTM parameters or server-side tracking data, and compare each channel’s attributed profit against its actual ad spend.

What is MER and how is it different from ROAS?

Marketing Efficiency Ratio (MER) divides total revenue by total marketing spend across all channels. Unlike per-channel ROAS, MER avoids the double-counting problem because it uses one revenue number against one spend number. If your store earned $100K total and spent $25K across all ads, your MER is 4:1 regardless of what individual platforms claim.

Ready to see what your ad spend actually returns? Start with your WooCommerce orders and payment processor—that’s your ground truth. Everything else is a platform’s best guess. Learn how Seresa automates profit-per-channel reporting →

Share this post
Related posts