SMS marketing ROI compares the contribution from matched sales with the full campaign cost. Build the comparison from messaging, order, refund, and cost exports, using a stated observation window and a check against finance totals.
The ROI SMS marketing teams report should compare matched customer contribution with campaign costs over an explicit observation window. Orders must be net of discounts and returns, while costs must include more than the messaging invoice. A matched sale establishes an allocation under your rules; it does not establish that the message caused the sale.
Create a register with campaign ID, send date, audience definition, sales-window end, attribution rule, and cost owner. For this example, a US retailer measures orders placed within fourteen days after each send. Refunds relating to those orders are included through the reporting cutoff, which is recorded separately.
Use an approved customer or order key to connect the messaging and order summaries. Phone numbers are unnecessary in the working comparison when a consistent internal identifier is available. Keep a separate unmatched bucket; missing identifiers should not silently become customers with no purchases.
The order export needs order ID, campaign allocation, order date, net sales, returns, and variable product and fulfillment costs. The messaging export supplies campaign totals and billed charges. Finance supplies creative charges, campaign labor allocations, and any offer expense missing from the order figures.
Agree how an order touched by several campaigns receives credit. Google's attribution guidance describes attribution as assigning credit for user actions across touchpoints. Your combined comparison needs its own consistent rule; the marketing attribution guide covers those choices in detail.
Net sales in this example already reflect campaign discounts and refunds. Variable costs contain merchandise and fulfillment, with marketing excluded. Marketing investment contains messaging charges, creative, and allocated campaign labor or platform costs.
This separation prevents the same discount or marketing expense being deducted twice. A voucher that reduces order revenue belongs in net sales; a separately purchased promotional item needs a stated cost treatment. Ask finance where the charge already sits before adding it.
The marketing ROI versus ROAS guide owns the general formulas and denominator choices. Here the practical task is applying one agreed scope consistently to SMS order matches. Do not substitute revenue divided by messaging fees for a contribution-based return.
These illustrative campaigns have completed the same sales window. Amounts are USD, with percentages rounded to one decimal place where needed. Orders are counted once after the attribution rule is applied; partial credit would require the same allocation in revenue and its related variable costs.
| Campaign | Matched orders | Net sales (USD) | Variable costs (USD) | Contribution before marketing (USD) |
|---|---|---|---|---|
| Win-back | 120 | 18,000 | 10,800 | 7,200 |
| Replenishment | 200 | 24,000 | 13,200 | 10,800 |
| Total | 320 | 42,000 | 24,000 | 18,000 |
For this summary in columns A through E, calculate E2 and fill down:
=C2-D2
The corresponding campaign-cost register is:
| Campaign | Messaging (USD) | Creative (USD) | Allocated costs (USD) | Total marketing cost (USD) |
|---|---|---|---|---|
| Win-back | 1,200 | 600 | 200 | 2,000 |
| Replenishment | 1,600 | 600 | 200 | 2,400 |
| Total | 2,800 | 1,200 | 400 | 4,400 |
Combine the approved contribution and cost columns in a return summary:
| Campaign | Contribution (USD) | Marketing cost (USD) | After marketing (USD) | Attributed ROI |
|---|---|---|---|---|
| Win-back | 7,200 | 2,000 | 5,200 | 260.0% |
| Replenishment | 10,800 | 2,400 | 8,400 | 350.0% |
| Total | 18,000 | 4,400 | 13,600 | 309.1% |
With that last table in columns A through E, D2 is =B2-C2. E2 is:
=IF(C2=0,"",D2/C2)
Format E as a percentage. The total ROI uses =SUM(D2:D3)/SUM(C2:C3), giving 309.1%. It is the return on the combined dollars invested, rather than an average of the campaign percentages.
Suppose a worksheet named Orders contains campaign ID in A, order date in B, and matched net sales in C. In the campaign register, A2 is the campaign ID, B2 the inclusive window start, and C2 the inclusive window end. Sum the matched orders with:
=SUMIFS(Orders!$C$2:$C$1000,Orders!$A$2:$A$1000,$A2,Orders!$B$2:$B$1000,">="&$B2,Orders!$B$2:$B$1000,"<"&($C2+1))
The upper bound includes timestamps throughout the final day. Microsoft documents SUMIFS as summing values that meet multiple criteria. Apply the same campaign and date criteria to variable costs, and extend the ranges to cover the full export.
Covirage is not affiliated with Microsoft or Google.
Prove the report before interpreting it: $42,000 minus $24,000 equals $18,000, and $18,000 minus $4,400 equals $13,600. Tie messaging costs to supplier invoices and total order revenue to the financial extract. Matched plus unmatched orders must equal the eligible order population without duplicated order IDs.
Bring your campaign-cost register and matched order and refund summaries to Covirage as files or a Google Sheet. Covirage maps the columns, and its tools compute and check the figures; the external AI model explains the result with every figure traced to its rows. Create a free Covirage account and bring a sample of your own data.
See customer profitability for the contribution behind those matched sales.
Yes, but count it once. If the order export already reports revenue after the discount, do not add the same discount to marketing costs. Record separately funded rewards or offer expenses that have not already reduced revenue or contribution.
Choose a window that fits the purchase cycle and document it before comparing campaigns. Use equally mature campaigns and show later revisions separately. A short reorder campaign and a considered purchase may need different windows, so their headline returns may not be directly comparable.
No. Orders need an agreed match and attribution rule, and overlapping channels must not claim the same outcome in full. Even correctly matched orders may have occurred without the message, so attributed return alone does not establish incremental return.
Use the supplier's billed units to reconcile messaging expense. Sent and delivered counts help explain campaign execution, but neither replaces the dollar investment denominator. Keep those operational counts beside the return calculation so delivery changes do not obscure cost changes.