Today I'm 29
In the past year, I've:
- Quit my 9-5 and went all in on business. Best decision ever, I should have done this 10 years ago.
- Rebuilt the entire SEO team of an 8-figure agency with 15+ team members
- Placed 50+ other international employees with other businesses
- Generated 1,000s of leads for our home service clients through SEO.
- Traveled 6+ times.
- Built and hosted AI agents for blue collar businesses.
- Built ChatSales (first time building something of this scale. Learned a TON)
- Took up running again after a long time off. 70 Miles down in the past 50 days, mostly on an empty stomach to cut.
On track for first Marathon later this year as long as my knees hold up.
- Down about 17 lbs from the running. About 15 more to go before bulk.
- Began consulting as a fractional CTO/COO for a buddy’s market company
Next year I want to have our house paid off, travel 10 times, have created multiple lead gen channels (mostly video), and hit 100k MRR consistently.
Honestly its been a smaller year than I wanted and planned for. We did great, still hit record revenue levels, but its not where I want us to be. Mainly due to shiny-object syndrome.
Biggest goal this year is to stay consistent, and focused on the vision.
Today I'm 28
In the past year, I've:
- Had my first son with my wife - nothing has motivated me more
- Tripled my personal income
- Grew revenue 25%+ MoM for 8 months now in my company
- Started a new company placing VAs, and made 25k profit in the first 45 days
- Hired more 30+ VAs
- Ran 120+ miles - need to work more on this
- Took the wife to London for the first time
- Met my international team in the Philippines and had a blast
- Bought a house
- Crossed 5k followers
- Closed a six figure software contract
- Recovered the business from nearly putting payroll on credit card in December, to approaching six figure months rapidly now
I'm on track to do just shy of 1m in revenue this year, possibly over if we can figure out lead flow for VAs
Watch as we take this to 2m, and beyond. Goal of 5m in the next 5 years, or I suck
Biggest takeaway from this past year, is just keep going.
Its not easy for anyone, you're not doing anything wrong, and its normal to be dodging bullets in business all the time. Just keep going.
To anyone reading, thanks for the support and attention/time. Hope its been entertaining watching me 🍻
A PE group with 5,500+ service trucks bought a 50-year-old HVAC company two years ago.
Right now, they're using the exact same SEO strategy we use to rank home service companies in maps.
The company is Lindstrom Air Conditioning & Plumbing. Founded in 1975, about 300 employees, 100,000+ homeowners served across Broward, Palm Beach, Martin and St. Lucie counties.
Their primary location has over 11,000 reviews but reviews have grinded to a halt on it.
Here's what they have been up to:
1. They turned up the reviews first
Before the sale, the main profile was getting about 95 new reviews a month.
By May 2025, it was getting 278.
2. Then they started opening profiles, a new one every 2 months
For years, it was 2 profiles: Pompano Beach and Port St. Lucie.
Since December they opened 6 more:
Weston, December
Delray Beach, January
Boca Raton, April
Pembroke Pines, June
Coral Springs, August
Fort Lauderdale, September
3. They funneled the reviews to the new profiles
The main profile went from 278 reviews a month to 31.
But review generation didn't slow down, and in September, all eight of their profiles got nearly 230 new reviews, with most of those on the new profiles.
The Fort Lauderdale profile got 88 reviews in its first 5 weeks.
So, here's why they're doing it, and why we use this exact playbook for our clients.
Google Maps is a proximity-based algorithm, and even their original Pompano Beach profile with 11,000 reviews can't rank across an entire metro.
What they did is stand up new Google Business Profiles in the target markets they wanted to rank in.
But we're not here to just learn from large PE-backed brands. We want to beat them.
If I were running a $5 million-a-year HVAC company, I would beat Lindstrom with DBAs.
I would stand up a new business profile every quarter and file a DBA with keywords attached to the end of my business name, with the location and service I want to target.
And where these profiles go is key.
Start by pulling up your CRM and seeing where the highest-ticket and easiest-to-close jobs have come from.
Cross-reference that with home value, demographic data, and permits to see who's spending money on big home renovation projects.
Finally, do a competitor analysis and make sure someone didn't already steal the area.
This is the exact research we do for clients, and it works 10 times out of 10.
Once we dominate an area, we repeat the process in the next city over, and begin targeting new customers.
An auto shop we work with was paying $450+ per customer from Google Ads.
Our SEO campaign brought that cost per customer down to $220, and netted them $643k in sales.
Because of it, they eventually turned off Meta and LSA.
Heres how we did it:
1 - We reworked their website and on-page to target the terms customers were searching for.
2 - Reverse-engineered the shop's ranking above them.
3 - Built local backlinks and citations, and made sure every listing had consistent information.
4 - After traffic rose, we focused on conversion rate optimization to turn the clicks into customers.
At $220 a customer now, they ended up seeing a 28X on what they spent with us.
An $11M+ HVAC, plumbing and electrical contractor I consulted for this summer was getting zero plumbing jobs from SEO.
They had hundreds of service calls.
But all of their Google profiles were set to "HVAC contractor."
Google gives each profile one primary category, and it's the strongest signal for what that profile shows up for. That setup works until winter, when the AC calls dry up.
I see this setup over and over with multi-trade contractors.
What I told them:
1. Don't switch an existing profile to plumber. You'll end up with a suspended profile, and you're going to lose the HVAC market share that you currently have
2. Research where the plumbing jobs are and stand up a new profile there, with plumber as the primary category.
3. Send every plumbing review to that profile.
Google is testing your profile's Posts section higher up on your business panel right now.
Typically, these get buried further down in the profile. That could be changing.
If you haven't posted in months, that's what customers may see first. Post a recent job this week.
Talked to a $2.8M HVAC owner who's been doing his own SEO with Claude. And honestly, it wasn't bad.
He ranked decently well around where his shop was located, and for the basics, he did pretty good.
His rankings dropped off pretty quickly after that, and he wasn't getting leads from the neighborhoods he wanted though.
His competition had figured this out, and they weren't just writing more location pages for their websites.
Here's what that flatline is costing him. Say one of those neighborhoods is worth 10 calls a month:
- Close 30% of them and that's 3 jobs
- At an $8,000 install, that's $24,000 a month
- All of it going to the competitor who ranks there
Doing SEO yourself gets you the basics. It doesn't get you into the next part of town though.
The fix for him was pretty simple.
- Research where the next profile should go based on competition and macro factors.
- Stand up new Google profiles in the neighborhoods he wants
- Reverse engineer the local backlinks of whoever's winning there
- PR and citations so he starts showing up in AI answers
The real ROI is investigating and doubling down on the parts of town that he wants to target and serve.
For any other entrepreneurs starting out early on in their journey, you've got to avoid shiny object syndrome at all costs.
This is coming from a guy who made the mistake this last year.
We hit record revenue months hiring SEOs for other marketing companies, and the work was fun, and the cash was great.
The problem was my attention was split between two different businesses.
Eventually, growth on both sides started stalling.
Some advice I can confidently stand behind for anyone else starting out is just to stay consistent and focused.
And honestly, it's a really simple concept, but it's really hard to stick to in practice.
The SEO report that your agency ships you every month shows you clicks and calls.
But your bank account never feels it.
Here's what your SEO company should be able to show you every month:
1. Booked jobs filtered by service from your CRM
Not generic calls or form fills. They should be able to show which service with what ticket.
Calls can come with drastically different numbers tied to them. A $150 repair call is not worth nearly as much as a $15,000 replacement form fill.
2. What happened to every lead that came in
The report also needs to show when the estimate was booked, when the job was won, if it was the wrong service, and if the lead came in from outside your serviceable market.
More inquiries are only going to help if they're inquiries from customers you can serve.
3. Cost to land those customers
There should be a breakdown for the ROI on SEO, Google Ads, and any other lead aggregator.
A diesel shop we work with got a cost per customer down to $220 from SEO. Whereas Google Ads was $450+
4. What changed on the site compared to last month.
This should have before-and-after breakdowns and what keywords each page is designed to target.
5. What new pages got indexed, and of those pages, what were the results
"We published 10 pages" is not a report, those pages need to be connected to leads and dollar amounts.
6. Calls that came in for every Google Business Profile
If you have more than one location, each profile's calls need to be tracked separately.
SEO outputs are really easy to track. Jobs and attribution are not, and that's why most SEO companies stop the report at the output.
If they can't show you these, ask why.
The links that are going to move the SEO needle for you as a home service business owner are not the ones that SEO companies sell you.
They come from businesses in your town that you already know.
The way I explain local backlinks to home service owners is that they're kind of like a super local review from another business rather than a customer.
Google is going to trust who vouches for you on the local level. A link from your chamber of commerce is saying that you're a real company that works in that area, and Google Maps recognizes that.
Here's the tier list of what we work from for local backlinks:
1. Your chamber of commerce and neighborhood business associations
2. Regional contractor and homebuilder associations and lists
3. Suppliers and dealers that list their installers
4. Teams and events you already sponsor: Little League, booster clubs, charity golf
5. Local newspapers, neighborhood sites, community newsletters
6. City and county business directories
And for most campaigns, you don't need hundreds of these. Sometimes, three to four can seriously move the needle.
Just a handful of these is going to run you a little over $1,000. If that takes you from 20 calls a month to 26, and your close rate on those leads is 30%, that's 2 more jobs.
Assuming about $2,500 per customer, that's $5,000 in your pocket for just $1,000 invested on local links.
A roofing client of ours already had local relationships in the area. We made sure that those groups were linking back to them and their homepage on the website.
That one Google profile for that campaign went on to produce 314 calls.
Start with the relationships you already have. Your map rankings could be a few phone calls away
In about 70% of our discovery calls, SEO is not the fix home service business owners need.
Here's what I check before I'd accept your money:
1. Reviews
Sometimes in the markets we audit, the competition is too steep to beat with SEO alone.
If you're in a tier 1 market going up against legacy competition with thousands of reviews, you're going to need more than one 5-star review a week.
For a simple check, just go take the top three competitors that are beating you in the map pack and see if you can achieve or beat their review velocity.
2. Close rate from the sales team
More calls from SEO are going to be worthless if you don't have a team that can close them.
Go into your CRM and count how many calls turned into sold jobs from your sales team.
Oftentimes, if this isn't at least 20%+ on average, SEO is just going to be sending you more calls to lose.
3. Runway
Yes, even in 2026, with all of our AI tools, SEO takes time, and ROI only begins to show up at months 6 to 8.
Take the retainer for SEO and multiply it by a healthy 8.5, just for good measure.
If you can't carry that number without it paying you back anytime soon, then you're not ready for SEO yet.
4. The service you're targeting
If you're trying to target a niche service while ranking for a broad term like "plumber near me," the SEO campaign is going to miss, and you're far better off just running PPC.
I always tell people that SEO is like casting a net into a pond, whereas PPC is fishing with a pole with specific bait for a specific fish.
SEO pulls in everything. PPC can snipe certain jobs.
Only when all four of these are in place does SEO work really, really well. When they aren't, I just tell prospects that they're just not ready and to come back when those four are dialed in.
If you're a $5 million HVAC company, starting an SEO campaign comes down to one number.
ROI on dollars spent on the process.
The play right now is getting a new profile stood up after deep research covering a number of things:
- Your past CRM job history
- The level of competition
- The propensity for customers to pay for high tickets in that area
- And any macro impacts on the region that could impact lead quality i.e. home value trends, weather patterns, aging infrastructure
A new office lease will be $500 for a monthly lease, for 6 months.
An SEO retainer for this size of company would be $3,500/mth.
Targeting installation jobs with a ticket price of about $8,000 on a 30% margin leaves you with about $2,400 profit per job.
That means the SEO campaign needs to at least produce two jobs per month to break even.
Over 6 months, that's 10 installs. Every install after that is $2,400 of profit.
Two installs a month. That's the number you're buying.
We charged a 4-man diesel shop $22.5K over 9 months. SEO brought them 102 customers worth $643K.
Here's how the numbers broke down for this campaign.
- 228 calls from their Google profile we got them
- 102 of them turned into customers
- $2,100 average ticket per visit
- $6,300 a customer over their lifetime, with each new customer coming back three times on average
- 75% margins, so roughly $480K of that is gross profit
Previously, they were running Google Ads, and their cost per customer was north of $450.
SEO dropped that down to about $220.
Once SEO was bringing customers in at half the price, they turned off Local Services Ads completely.
So here's how we did it:
1. We stood up a new Google profile for them in their target market.
2. Reworked the website's structure and on-page so every service had a page that could rank
3. Fixed the landing pages so more of the people who found them actually called
4. Reverse engineered the shops ranking above them
5. Optimized the Google profile they already had
6. Local backlinks, citations, and the same name, address and phone everywhere
We look to partner with clients where one customer's value can carry the ROI for the entire month's retainer that we charge. In this case, one customer easily paid for a whole month of SEO.
The best part is a 4-man shop had to hire a new tech team to keep up.
Still chasing your competitor’s review count?
A big number can make the gap feel impossible. But it’s more useful to look at your own process: are you consistently asking customers for feedback, or only making a push when business slows down?
Build a review system your team can keep up with every week.
Full breakdown on our YouTube. Search up “Todd Anderson Local SEO.”
Want to see what’s holding your local rankings back? Book a market teardown here:
cal.com/cascadewebsolutions/…
#LocalSEO #GoogleBusinessProfile #GoogleReviews #HomeServiceMarketing
A profile with 25,000 reviews lost the map pack to one with 1,400. Here's what I'd do if I owned the big one.
What they do well: decades in business, a brand everyone in DFW knows, fresh 5-star reviews coming in constantly.
So we know reviews aren't the problem.
1. The category. Their website sells plumbing, HVAC and electrical. Their Google profile is set up as HVAC only. So for a plumbing search, Google has a 25,000-review HVAC company to rank.
Fix: if you're a multi-trade home service contractor, you need to have multiple business profiles targeting one of your singular services per profile.
2. The name. The 1,400-review profile filed a DBA and got keywords added to their business name for emergency plumbing services.
Fix: for the 25,000-review juggernaut, I would get other business profiles stood up, file the DBAs for each one, and get keywords added to those business profiles titles/names
3. The location. One address can't be close to every searcher in a metro the size of DFW.
Fix: put each new profile where the profitable jobs are. If central Dallas is the money, that's where the plumbing location goes.
The problem with companies like this is they have an insane review velocity, getting 3 five-star reviews a day, but they're all being slammed onto a profile that targets the wrong clients.
Found out we're having our second. Due May 16th.
Running your own business cuts both ways.
I work harder than I ever would at a 9-to-5, and I do it from home.
Some days that means I'm still working at 6 while the family's eating dinner.
Other days it means I can take an hour off when our 1.5-year-old is having a rough day.
I'll take that trade every time.
Before we open a new Google profile for a $2.2M plumbing company, we stack 3 maps:
1. Their CRM. Where their best jobs already come from.
2. County permits. We find which neighborhoods are putting real money into their homes.
3. Housing age. Where the homes still sit on cast iron sewer lines.
Most SEOs stop at the CRM. That shows where you've already won, not where the next jobs are.
For him, the overlap was an older part of town on cast iron, with remodel permits going up and only 4 plumber profiles showing on the map there.
That's where his new profile goes. Those pipes are at the age where they crack and back up, and sewer line replacements run $12k+ a job.
When those homeowners search, he's the closest plumber on the maps.
For a roofer it's the same play, with hail and storm history in place of pipe age.
A $1.2M electrical contractor paid his SEO company $1,800 a month for 2 years.
They told him a real address didn't matter for maps, so he took it off.
He had over 100 reviews, and the second-best competitor in his area only had 40.
$43k spent, and the one thing that could have moved him wasn't done.
Google Maps ranks on proximity. A profile ranks around the address it's verified at, so if that isn't near the customers you want, even 100 reviews can't pull you into their results.
The fix was simple.
Get an office in the towns he wants work from, and put that address on his Google profile.
Most SEO takes months. When the reviews and the website are already there, the address is often the missing piece, and calls can start moving inside 30 days.
A pest control company we worked with got 307 qualified calls from Google in 12 months. $354K in new work.
Before us, they paid about $50 a lead and closed around 10% of them. Every customer cost them nearly $500.
Here's the ROI on the campaign they got with us:
- Our retainer was 3k/mth and the campaign lasted 12 months
- 122 customers ended up converting from SEO calls
- Cost per customer was $300
- $354k in revenue, and a 9.8X ROI on our work for them
They rank in their market from the SEO work and the campaign is paid for, and they get free leads from Google Maps.
1 - We got them a new GBP in their target market.
2 - We then reworked their site and fixed and added landing pages
3 - Finally, we built dozens of local links for them.
And honestly, the results were not there in the early months. This took time, and the fix was never going to take 30 days.
The result - Calls are up 214% from their previous year.
A 70k/mth diesel shop that we work with used to pay $450+ to land a customer on Google Ads.
Our SEO got that down to $220.
They ended up turning off both LSA and Meta ads since then, and have 245 calls from May through mid October.
We got a Toronto-based roofing company 304 calls in 90 days with organic SEO.
They originally came to us looking for a way to stop throwing money away on Google PPC for low-intent leads that they had to continually chase down.
Their sales process was dialed, but their close rate was sub-15% due to the leads getting hounded by 4 other companies who got the same lead.
Through SEO, we were able to lower their cost per lead, and their close rate shot up due to the SEO leads being inbound, higher intent calls.
How did we do this?
1 - We got keywords filed under their business name.
Yes... you can do this.
File a DBA, update the business name, and re-verify the business if need be.
Don't believe this works?
I've done at least a dozen breakdowns over on YouTube on how this exact strategy is printing for home service companies right now.
2 - We got a new Google Business Profile stood up in the neighborhoods they wanted to target.
Local SEO is a proximity-based algorithm, and you can only rank well from a certain distance away from your profile's address.
At a certain point, you just max out the ranking.
What we did is we researched with CRM Census Bureau data, as well as looking at permits that were pulled in the area for home renovation projects
This, cross-referenced with the competition in the market, showed us exactly where we should stand up this next profile.
3 - We got them local backlinks from local connections they already had.
Nine times out of ten, our clients already have local relationships in the area. They're just not leveraging them correctly.
What we did for this company was investigate those relationships, ensure the backlinks were pointing at their website correctly, and we got them indexed.
4 - We did a complete website overhaul and reclaimed ownership from the previous agency that was holding their website hostage.
The first part was pretty rough, and we had to negotiate with overseas contractors to get the website back.
Luckily, we were able to, and we began a complete end-to-end website overhaul to fix the on-page SEO.
And something we see a lot of agencies miss is that we optimized for the conversion rate on all the pages.
A lot of agencies will just stop at running SEO, but what we did is we looked at the conversion rate across every single page and ensured we had CTAs used throughout the copy.
5 - Measurement.
We got access to their CRM and attributed every single call and website form that came through, matched against the timestamps at which they were recorded by the sales team, and then attributed back to their CRM.
We were able to match an exact dollar amount to the inputs from Google PPC as well as SEO.
This allowed them to scale beyond their $2.5 million-a-year goal and predictably attribute more resources to the winning method.
And I'll be honest, this campaign was a huge hassle.
It was a dogfight to get access to their website. There was a boatload of cleanup that we had to complete, and it was at least 5.5 months before we saw some real progress.
But... our client had enough patience to hang on with us through the campaign, and the results were worth it.
On all my discovery calls, everyone sneers at the idea that SEO takes time.
And unfortunately, the clients we sign that come from another agency think that our new SEO campaigns will automatically start 3 months ahead because of the previous work. But if you build on top of a faulty foundation, you'll never get anywhere.
The winners who prevail and get results like you see above are the ones that can stick it out, trust the process, and await the results that take time.
Got burned by your last agency? Most business owners who come to me have.
On every one of my onboarding calls, there's always a sense of hesitancy around communication.
"Todd, I don't want you to disappear on me as soon as I submit this payment link"
And how can I blame them?
Home service business owners have been tugged around by marketing agencies for years with lackluster communication and quiet Slack channels.
When you can actually get a hold of them and squeeze an answer out of them, all you get back is some kind of answer like 'it's going to take more time'
Ever since starting my agency, I've always prided myself on getting back to clients within 120 seconds 99% of the time.
EVEN if it means all I can do is send a quick message like, "Hey, I saw this. I'll get back to you soon" when I'm tied up in some other work.
I've literally felt the tension release in monthly catch-up calls as our relationships grow strong with our clients, and they know we're not just going to leave and collect a check.
Do I miss this metric some days when I'm tied up with a fire and too busy?
Yes.
Do I always get to it in time on weekends?
No.
But I'll die before I let a Slack message from one of my clients go unanswered for longer than 10 minutes.
What's been even cooler to see is my team has followed suit, and I found myself actually losing the race to get back to clients sometimes, which has been cool to see. Very proud of them.








