Real Minnesota clients, real numbers, named.

Every figure on this page came out of a live Google Ads or Search Console account we log into, with the client named and the date range attached. Nothing here is a projection, an industry average, or somebody else's screenshot.

★★★★★ 5-star Google reviews from real Minnesota business owners
323tracked leads in twelve months
$20,580of ad spend managed
$63.71average cost per lead
2023building here since
How to read this page

Three rules we held ourselves to.

Agency case studies are mostly fiction. Here is exactly what we will and will not put in front of you, so you can hold us to it.

01

The client is named

No "a Minnesota roofing company" or "Mike J., HVAC." Real businesses with real names you can look up and, if you want, call. If we cannot name them we do not use the number.

02

Every number belongs to one account

The figure on a client's card came out of that client's account, not out of a total divided up afterwards. The four numbers in the bar above are the portfolio across every ad account we run, and they are labeled that way on purpose.

03

We do not claim your revenue

You will not see "generated $2.4M" here. We can prove leads, clicks and positions. What happened after the phone rang is your sales, your crew and your pricing, and taking credit for it would be dishonest.

The work

Six clients, six honest results.

Ads, websites, local SEO and the combinations of them. Some of these are twelve clean months of account data and some are four years of a site that simply kept working.

218tracked leads
$55.52per lead
Irrigation · Minnesota

Image Irrigation

$12,103 of Google Ads spend over twelve months producing 2,954 clicks at a 7.6% click-through rate, which is roughly double what a typical local service account runs. Seasonal trade, so the spend is front-loaded into spring.

See the numbers
101tracked leads
$73.61per lead
Pole Barns & Remodels · Harris, MN

Image Contracting

$7,435 of ad spend over the same twelve months. On the organic side the same client went up 172% in Google clicks and moved from an average position of 48 to 26. Job tickets here average around $200,000, so a $73 lead is cheap.

See the numbers
+209%Google clicks
39→19average position
Manufacturing · Minnesota

Service Grinding & Sharpening

A CNC grinding and custom tooling shop whose customers run from John Deere down to walk-ins. New site plus local SEO took them from 399 clicks a year to 1,232, and roughly halved their average position.

See the numbers
0→860clicks from nothing
18.4%click-through rate
Gym & Fitness · North Branch, MN

Iron Yard

No website at all when we started. We built one and did the local SEO behind it. It now sits in the top six for its searches at a click rate most sites never get near.

See the numbers
4 yrsand still in use
Stilltheirs
Concrete & Masonry · Minnesota

Grizzly Concrete & Masonry

One of the first websites Wyfi ever built. Four years old, never rebuilt, and they still like it. There is no traffic figure here because we do not have access to their Search Console, and we are not going to estimate one.

See the numbers
Inboundfrom our own SEO
Isanticity page
Plumbing · Isanti, MN

Duck Duck Plumbing

They found us because our own Isanti page ranked for what they were searching. The site is still in build, so there are no results to show yet, and there will not be any on this page until there are.

See the numbers
Superior Drywall website homepage, a drywall and painting contractor in the Twin Cities, built by Wyfi Marketing
Superior DrywallDrywall & Painting · Twin Cities
Image Contracting website homepage, a pole barn and exterior remodeling contractor in North Branch MN, built by Wyfi Marketing
Image ContractingPole Barns & Remodels · Harris, MN
Image Irrigation website homepage, an irrigation contractor in North Branch MN, built by Wyfi Marketing
Image IrrigationIrrigation · North Branch, MN
Service Grinding and Sharpening website homepage, a precision grinding company in Stacy MN, built by Wyfi Marketing
Service Grinding & SharpeningManufacturing · Stacy, MN
Daley Drywall Services website homepage, a steel stud framing and drywall contractor in Dalbo MN, built by Wyfi Marketing
Daley Drywall ServicesSteel Stud & Drywall · Dalbo, MN
Iron Yard gym website homepage, a fitness gym in North Branch MN, built by Wyfi Marketing
Iron YardGym & Fitness · North Branch, MN
Emerald Gardens website homepage, a Minnesota cannabis cultivator, built by Wyfi Marketing
Emerald GardensCannabis Cultivator · Minnesota
Grizzly Concrete and Masonry website built by Wyfi Marketing, shown on desktop and mobile
Grizzly Concrete & MasonryConcrete & Masonry · Minnesota
Duck Duck Plumbing website design for an Isanti, Minnesota plumbing company
Duck Duck PlumbingPlumbing · Isanti, MN

Where the numbers in the bar come from

Three Google Ads accounts, twelve months to October 2026: $20,580 of managed spend, 4,961 clicks, 94,856 impressions and 323 tracked leads at an average of $63.71 each. A tracked lead is a form submission or a tapped phone number recorded by conversion tracking we built, not a signed job. Two of those three accounts are the ones shown above. The third is a smaller drywall account with too little spend behind it to publish a cost per lead that would mean anything, so it is in the total and not in the cards.

Meta ads, eighty one days

Two accounts running Facebook and Instagram lead campaigns between August 1 and October 20, 2026. 44 leads on $1,274 of spend, an average of $28.97 each. Image Irrigation took 29 of those at $27.87, and their winterization campaign on its own pulled 21 leads at $20.14. Superior Drywall took 15 at $31.08. Across everything, 150,861 impressions.

Worth putting next to the Google number above. Meta leads came in at less than half the cost of Google leads over the same stretch. They are also colder, because nobody on Facebook was looking for a drywall contractor that morning, so the two are not interchangeable. Running both is how you get volume without paying search prices for all of it.

Pricing

What it costs to get numbers like these.

The results above came out of these packages. Ad spend is billed separately and goes straight to Google or Meta, so you always know what we are paid and what the platforms are paid.

Website Build
$3,500to $6,500

One-time project. Most Minnesota small business sites land in here.

  • Custom WordPress, no templates
  • Written copy for every page
  • Local SEO setup and Google Business Profile
  • Contact forms and call tracking
  • 3 to 5 weeks start to launch
  • You own it when the project is paid in full
Full Pricing
Most PopularGrowth
$1,500/month

For a business with a decent site that needs the phone to ring.

  • Local SEO, every month
  • Google Business Profile management and posts
  • Google Ads management
  • Meta Ads management, creative cut from your own photos and video
  • Conversion and call tracking
  • Monthly reporting you can actually read
Start Here
Full Service
$3,000/month

Everything, including me on site with a camera twice a month.

  • Everything in Growth
  • Deeper SEO and more content monthly
  • Two on-site photo and video shoots
  • Social content built from your real work
  • Landing pages and conversion work
  • Priority on everything
Start Here

Month to month, no contracts. For SEO we recommend giving it at least six months, because that is how long it takes to be worth judging. If you would rather commit to twelve months, two on-site photo and video shoots are included at no charge.

Fair questions

About these numbers.

Can I talk to one of these clients?

Ask and we will ask them. We will not hand out a client's number without checking first, but several of them are happy to take a call, and the ones who are not usually have a review up you can read instead. We would rather you verified this than took our word for it.

Why are there only six?

Because these are the ones with a full run of clean data and a client who is fine being named. We could pad this page out with logos and vague claims, but a short honest list is more useful to you than a long one you cannot check. It grows as accounts cross twelve months.

What does "tracked lead" actually mean?

A form submission or a tapped phone number, recorded by conversion tracking we installed through Google Tag Manager. Not clicks, not impressions, not an estimate, and not a signed job. If tracking was not set up properly on an account, we do not publish a lead number for it at all.

Is $63.71 a good cost per lead?

For home services in Minnesota, yes, and for a trade with five figure job tickets it is very good. But cost per lead only means something next to what a job is worth to you. $63 a lead is excellent if you close one in four at $8,000, and bad if you are selling $200 service calls. We work that out with you before we spend anything, and we will not guarantee you a number.

Do you have results in my trade?

Maybe not, and we will tell you straight if not. We have published work in irrigation, pole barns and remodels, manufacturing, fitness and concrete. If your trade is missing, the mechanics do not change much between local service businesses, but you deserve to know what you are buying rather than be shown an invented case study with your industry's name on it.

Why no revenue figures?

Because we cannot prove them. We can prove leads, clicks, positions and spend, because those come out of a platform we have access to. Revenue depends on your pricing, your close rate and your crew's capacity, none of which we control. Any agency attaching a revenue number to a marketing campaign is estimating and hoping you do not ask how.