Marketing ROI Calculation: A Simple Local Business Guide

You're probably paying for marketing right now and still not fully sure what's working.
A plumber runs Google Ads, boosts a few Facebook posts, asks a designer for flyers, and sponsors a local event. A restaurant tries coupons, Instagram, email, and a neighborhood postcard drop. At the end of the month, money went out, some customers came in, but the answer to “which channel made me money?” is fuzzy.
That's where a solid marketing ROI calculation helps. Not to build a perfect analyst dashboard. Just to stop guessing.
For a local business, this doesn't need to get complicated. You need a clear definition of return, a complete record of costs, a simple way to connect revenue back to campaigns, and a habit of reviewing results consistently. That's enough to make better calls on where to spend next month's budget.
Table of Contents
- First Define What 'Return' Means to You
- How to Track Your Costs and Revenue Accurately
- The Simple Formulas for Calculating Marketing ROI
- A Simple Spreadsheet to Track Your Marketing ROI
- Common Mistakes That Skew Your Marketing ROI
- From Numbers to Decisions Your Next Steps
First Define What 'Return' Means to You
Most bad ROI tracking starts with a formula too early. If you haven't decided what “return” means for your business, the math won't help much.
A local business owner usually says they want “more customers.” Fair enough. But a marketing ROI calculation gets useful only when that broad goal turns into something specific enough to track. For a plumbing company, return might mean booked service appointments from new homeowners. For a restaurant, it might mean first-time visits tied to a seasonal offer, or loyalty sign-ups that lead to repeat visits.

Start with the business goal
A business goal lives at the owner level. It usually sounds like one of these:
- Fill open schedule slots: A service company needs more booked jobs this month.
- Increase profitable traffic: A restaurant wants more weekday diners, not just busy weekends.
- Grow higher-value customers: A salon may care more about clients who rebook than one-time discount shoppers.
- Expand in a service area: A contractor wants more households in a specific neighborhood.
That first layer matters because not every campaign should be judged the same way. If your goal is to keep technicians busy, “more website traffic” is not the return. If your goal is more repeat diners, a one-time coupon redemption isn't the full answer either.
Practical rule: If the metric doesn't connect to cash flow, booking volume, or customer value, it's not the return. It's just activity.
Translate that goal into a marketing metric
Once the business goal is clear, choose the marketing metric that best shows progress. Keep it simple and close to the sale.
A plumbing contractor might track:
- Cost per booked appointment: Better than cost per click because clicks don't pay invoices.
- New customer calls from a specific campaign: Useful when call tracking is part of the setup.
- Revenue from first-time customers in a target ZIP code: Helpful when expansion matters.
A restaurant might track:
- Redemptions from a specific offer code
- New loyalty sign-ups from one campaign
- Revenue tied to a featured promotion
Then attach a financial value. If a booked appointment usually turns into revenue, that appointment has value. If a loyalty signup often brings repeat visits, that signup has value too. If you need help thinking through the business side of those numbers, this guide to financial growth metrics is a useful companion because it helps connect marketing activity to profitability, not just volume.
For many local businesses, this is also where first-party tracking starts to matter. If you collect customer details directly through forms, offers, bookings, or loyalty programs, your numbers get cleaner over time. That's why it helps to build basic systems for first-party data collection instead of relying only on platform dashboards.
How to Track Your Costs and Revenue Accurately
This is the part most owners underdo. They remember ad spend. They forget everything around it.
A sound ROI calculation should include all costs, not just the obvious media bill. Recent guidance on ROI tracking stresses that true ROI should include all costs, compare platform-reported revenue with CRM-verified revenue, and clearly document the attribution window because results can change when conversions happen after a platform's default lookback period or when labor and tooling are left out, especially in local and direct-response marketing where people often buy after a delay (Humblytics on calculating marketing ROI).
![]()
What belongs on the cost side
When local businesses tell me a campaign “worked,” I usually ask what they included in cost. The answer is often too narrow.
Track the full picture:
- Direct ad or media spend: Google Ads, Meta ads, radio placements, postcard printing, postage.
- Creative work: Designer fees, copywriting, photography, video, menu design.
- Outside help: Agency retainers, freelancers, consultants.
- Software and tools: Scheduling software, email platforms, CRM subscriptions, call tracking.
- Internal labor: The owner's time, a manager's time, front desk follow-up, marketing coordination.
- Production costs: Anything needed to make the campaign exist.
If you're mailing postcards, the all-in mail cost is easier to see than a channel with multiple moving parts. If you want a practical breakdown of what physical mail can cost at the campaign level, this look at the cost of sending a postcard helps frame the expense side in plain terms.
A short checklist helps:
| Cost category | Examples |
|---|---|
| Direct spend | Ads, postage, printing |
| Service fees | Agency, freelancer, consultant |
| Tools | CRM, email, scheduling, analytics |
| Team time | Setup, follow-up, reporting |
| Creative | Design, copy, offers, production |
How to treat revenue without fooling yourself
The revenue side is where owners get tripped up by attribution.
A customer may see your business in more than one place before buying. They might get a postcard, search your name later, read reviews, then call from Google. If you only credit the final click, your search campaign gets too much credit and your earlier touchpoints get ignored.
That doesn't mean you need a complex attribution model on day one. For a local business, start with a practical system:
- Use campaign-specific offer codes or landing pages
- Ask new customers how they heard about you
- Check CRM or point-of-sale records against platform claims
- Write down the attribution window you're using
A restaurant can track promo code redemptions. A contractor can tag incoming leads by source in the CRM. A med spa can use booking links tied to specific campaigns.
Here's a useful standard: platform data can suggest direction, but your own booked jobs, paid invoices, and redeemed offers should decide the final revenue number whenever possible.
Later in the buying path, this kind of walkthrough is helpful if you want a visual explanation of how tracking pieces fit together.
Why predictable-cost channels are easier to judge
Some channels are hard to cost because spending shifts daily, creative gets refreshed, and staff keep touching the campaign. Others are easier because the expense is largely fixed and visible.
That's one reason direct mail often gives local businesses cleaner analysis than they expect. If every mailed piece has a known cost, and you pair it with a unique code, phone line, or offer, your denominator stays stable. That doesn't solve every attribution question, but it does remove a lot of the cost-side fog.
Keep the accounting boring. The more boring your cost tracking is, the more useful your ROI number becomes.
The Simple Formulas for Calculating Marketing ROI
A lot of owners avoid ROI because they think the formula will be the hard part. It usually isn't. The hard part is getting honest inputs.

The core formula
A robust marketing ROI calculation should use the full cost base, not just media spend. That means including ad spend, agency or contractor fees, software and platform costs, internal salary allocation, and creative production, then calculating ROI as (((Revenue - Marketing Cost) / Marketing Cost) * 100) because the number is only decision-useful when all campaign costs are captured (Monday.com on marketing ROI).
Formula: ROI = ((Revenue from marketing - Marketing cost) / Marketing cost) × 100
That's the whole thing.
If the result is positive, the campaign brought in more revenue than it cost. If the result is negative, it didn't. If it looks good on paper but leaves out labor, software, or production, it's inflated.
What each part really means
The formula gets easier when you define each input plainly.
- Revenue from marketing means the revenue you're reasonably tying back to the campaign.
- Marketing cost means the total investment required to run it.
- ROI percentage translates that return into a comparison-friendly number.
For local businesses, the phrase “reasonably tying back” matters. You don't need perfection. You need consistency. If you use the same rules each month, your comparisons become useful even if the system isn't flawless.
A common mistake is calculating ROI on ad spend alone, then comparing that number to a campaign that included printing, staff follow-up, and offer fulfillment. Those aren't equal comparisons.
If you work with outside marketing help, this guide to calculating agency client ROI is worth reading because it shows how quickly ROI gets distorted when overhead and support costs are ignored. For owners who want to evaluate acquisition efficiency at the customer level, this overview of how to calculate cost per acquisition is a practical next metric to pair with ROI.
A second lens with LTV to CAC
ROI tells you what happened on a campaign. LTV to CAC helps you judge whether your marketing engine makes sense over time.
Here's the plain-English version:
- CAC is what it costs to get a customer.
- LTV is the value that customer brings over the relationship.
For a restaurant with weak repeat behavior, first-visit ROI matters a lot. For a plumber, HVAC company, dentist, or salon, the first sale may understate the true value if customers come back, buy maintenance, or refer neighbors.
That's why smart owners look at both views. ROI tells you whether the campaign paid off. LTV to CAC tells you whether a customer source is worth feeding long term.
A Simple Spreadsheet to Track Your Marketing ROI
A small business does not need another dashboard. It needs one place where the owner can answer a simple question at the end of the month. Which campaigns brought in profitable business, and which ones just felt busy?
A basic Google Sheet or Excel file handles that job well. The key is a layout your team can update without guessing what belongs in each cell.
The columns to include
Use one row per campaign period. If you run the same offer every month, give each month its own row so you can spot changes in response rate, cost, and revenue.
Start with this:
| Campaign Name | Channel | Total Cost | New Customers | Revenue | ROI (%) |
|---|
Then add a few columns that help a local business trace results without making the sheet bloated:
- Date range
- Leads or inquiries
- Offer code
- Phone number or landing page used
- Service area
- Notes
That last column matters more than owners expect. A short note like "calls came in late because of rain" or "front desk forgot to ask about the mailer in week one" gives context the raw numbers cannot.
Keep the routine simple:
- Log costs when they happen
- Wait until the response window is realistic before finalizing revenue
- Review the sheet once a month
- Record one change to test next time
The useful spreadsheet is the one your team still updates in three months.
Example one local pizzeria Facebook campaign
A neighborhood pizzeria runs a Facebook promotion for a family meal deal during a slow Tuesday and Wednesday stretch. The owner uses one promo code for online orders and trains staff to tag phone orders that mention the special.
That campaign row should include more than ad spend. Add the graphic design cost, any staff time spent setting it up, and the ordering platform fee tied to the offer if that fee changes with the campaign. Revenue still will not be perfect. Some people will see the ad, forget the code, and order later. For a local owner, "reasonable and consistent" beats "perfect but never finished."
In the sheet, that row might read like this:
- Campaign name: Family Meal Promo
- Channel: Facebook
- Total cost: ad spend, creative, setup time, related ordering costs
- New customers: first-time buyers tied to the offer
- Revenue: orders connected through the code and staff notes
- ROI: calculated from attributed revenue and total cost
This example is useful because Facebook often creates fuzzy attribution. The spreadsheet gives the owner a repeatable way to estimate results without relying only on platform reporting.
Example two direct mail for a home service business
Now look at a channel many digital guides ignore. A home service company mails a new-mover offer to households inside specific neighborhoods. For local businesses, direct mail is often easier to track because the cost side is cleaner before the first lead arrives.
If the business uses HelloMail, the owner already knows the per-piece mail cost upfront. That makes budgeting simpler than many digital campaigns where spend, clicks, and lead quality can swing week to week. The company can put a specific offer on the card, send people to a dedicated landing page, and have office staff ask callers for the code when they book.
A row for that campaign might look like this:
- Campaign name: New Mover Welcome Offer
- Channel: Direct mail
- Total cost: postcards mailed multiplied by the known mail cost, plus internal follow-up labor if you want the fuller picture
- New customers: first-time homeowners tied to the card
- Revenue: paid invoices from those customers
- ROI: calculated from attributed revenue and total campaign cost
For a plumber, cleaner, electrician, pest control company, or HVAC business, this setup is practical. You know the territory. You know the drop date. You know the mailing cost before the phones start ringing.
You still will not catch every influenced sale. Some homeowners keep the card on the counter for weeks, then call without mentioning it. Even so, direct mail gives many local owners a spreadsheet they trust more because one side of the equation, cost, is stable from the start.
That matters when you are deciding where to put next month's budget.
Common Mistakes That Skew Your Marketing ROI
Once owners start tracking, a new problem shows up. They trust the first number too quickly.
A good ROI figure is not just calculated. It's audited. The cleanest read of marketing impact comes from incrementality experiments that isolate true lift, because direct response platforms can overstate results by counting conversions that would have happened anyway. A better question is often what incremental sales the channel created, rather than what revenue it claimed (BCG on understanding marketing ROI).

Questions to ask before you trust the number
Use these as a quick owner's audit.
Did I include my real costs?
If you left out staff time, design, software, or agency support, your ROI is probably overstated.Am I using too short a window?
Some local buyers don't act immediately. A homeowner may hold onto a mailer, compare providers, then book later.Did one channel get too much credit?
Last-touch reporting often gives all the praise to the final click, even when another channel did the early persuasion.Am I counting claimed revenue or verified revenue?
If the ad platform says it drove a sale, but your CRM or point-of-sale system can't support that story, pause before accepting the claim.Did this campaign have the same purpose as the one I'm comparing it to?
A direct response offer and a brand awareness sponsorship should not be judged by the same standard.
Don't ask only “Did this ad get sales?” Ask “Would these sales have happened anyway?”
What a good ROI really depends on
Owners often want one benchmark number. There isn't a single one that works across every local business.
A “good” ROI depends on your margins, your average customer value, how quickly customers repeat, how much staff time fulfillment requires, and what the campaign was meant to do. A low-margin restaurant promotion may need a tighter view than a service business where one new customer can lead to repeat work and referrals. A branding campaign near a new location may look weak in the short term and still be worth doing.
The better question is this: Did this campaign outperform my other realistic options for the same budget?
That's the comparison that improves decisions.
From Numbers to Decisions Your Next Steps
If you've made it this far, the practical path is simple.
First, decide what return means for your business. Not “engagement.” Not “reach.” Something that connects to bookings, customers, or revenue.
Second, track the full cost and keep your revenue attribution grounded in your own records. If a platform claims more than your CRM, booking system, or POS supports, trust your business records.
Third, calculate the same way every time. Consistency beats complexity. A basic monthly spreadsheet that gets updated will help your business more than an elaborate reporting setup nobody maintains.
Start with one campaign. Your next postcard drop. Your next Facebook promotion. Your next seasonal offer. Run the numbers, write down what happened, and compare it to the last effort. That's how local owners stop treating marketing like a gamble.
When you know your numbers, budget decisions get calmer. You cut what isn't carrying its weight, keep what is, and build a marketing mix that fits the way local customers buy.
If you want a channel with a predictable all-in cost that's easier to plug into your marketing ROI calculation, HelloMail is worth a look. It automates direct mail to new movers in your service area, which gives local businesses a straightforward way to track spend, tie responses to a specific offer, and judge results without relying only on digital platform reporting.