The Happy Roofer
roofing · Calgary
📅 This month's plan
This month we're positioning you for Calgary's summer roofing surge. You'll get 2 GBP posts that highlight hail damage expertise and your 10-year warranty—timed to catch homeowners dealing with spring storm aftermath. We're drafting 4 social captions that reinforce your no-upsell pricing model and emergency response capability. You'll receive drafted review responses to boost engagement, smart tasks to guide your team on citation cleanup and photo uploads, a citations checklist to fix the directory gaps holding you back, and an AI Search Visibility report showing how ChatGPT and Perplexity surface your business. By month-end, you'll have a clearer picture of where you rank against Epic and Advanced Level, plus a content system that turns your 20 years of trust into consistent online visibility.
🎯 July 2026 progress
0/12 tasks · 0%
🎯 Your Action Plan for July 2026
How this works: Each week has 3 short tasks (5-20 min each) that move the needle on your local search ranking. Tick them off as you go — your progress saves automatically, and completing a whole week unlocks a trophy 🏆. Open the assets you need (Content, Citations) right from the task with one click. Don't worry about doing them on the exact day — these are this month's plan, not today's.
Week 1
Foundation
0/3
Photos are your lowest health score and Google heavily weights visual proof for roofing searches during hail season.
Calgary homeowners searching 'hail damage roof repair' need to see you've handled storm claims before — capitalize on peak hail season anxiety.
These high-authority directories rank fast and build trust signals Google needs to boost your pack position before Stampede traffic hits.
📸
Complete all 3 tasks to unlock Photo Boost
Week 2
Publish
0/3
Stampede week brings 1.2M visitors and locals planning projects — your drafted post captures 'free inspection' searches right when decision-making peaks.
Social proof during Calgary's busiest week builds local brand recognition and drives GBP discovery when people search your business name.
You're still 65 photos behind competitors; closing this gap moves your Photos health score from null to competitive and increases click-through rates.
📝
Complete all 3 tasks to unlock First Wave
Week 3
Push
0/3
Catch homeowners returning from holiday mode with a timely inspection offer — Google rewards posting consistency with better local visibility.
Consistent posting signals active business status and keeps you top-of-mind as hail season continues through August.
Local directories boost geo-relevance signals for 'roofer near me' searches — critical when you're starting from zero reviews and need trust indicators.
💪
Complete all 3 tasks to unlock Halfway Hero
Week 4
Close out
0/3
Complete NAP consistency across all 25 directories maximizes your foundational trust signals before requesting first reviews next month.
Drone shots differentiate you visually and aerial views perform exceptionally well for roofing searches — pushes Photos score into healthy range.
You need to solve the 0 reviews problem urgently; having a system ready means every August job becomes a review opportunity during peak season.
🏆
Complete all 3 tasks to unlock Monthly Master
🏆 Weekly Wins 0/8
Why this is here: Local SEO is a long game — the businesses that show up every month are the ones that win. Each win below marks a real piece of work shipped (photos uploaded, reviews replied to, citations submitted). They're not points or rewards — they're a record of the work that compounds into more inbound calls over time.
📸
Photo Boost
Closed the photo gap this week
📝
First Wave
Published the first round of content
💪
Halfway Hero
Pushed through the mid-month grind
📍
Citation Crusher
Submitted your business to 20 of 25 directories
Stretch
🏆
Monthly Master
Completed every task this month
⭐
Review Champion
Replied to 5+ reviews this month
Stretch
🔗
NAP Perfectionist
Hit 100% NAP consistency
Stretch
🤖
AI Climber
SAIV jumped 10+ points this month
Stretch
🏢 Your business audit
The Happy Roofer is a family-owned roofing contractor serving Calgary and surrounding areas within a 40km radius of northeast Calgary. They've been in business for 20 years, specializing in roof replacement, hail damage repair, emergency repairs, inspections, and gutter installation. Their GBP profile currently lacks detailed category tags, which means Google doesn't fully understand the range of services they offer—particularly emergency and hail-specific work that sets them apart in Calgary's storm-prone climate.
🎯 Competitor gap
Your top competitors average 90 photos on their profiles while your current photo count appears minimal, and Epic Roofing's 1,305 reviews significantly outpace your current review velocity.
- 📸Epic Roofing has 249 photos showcasing completed projects and process shots. Visual proof builds trust in roofing—most homeowners can't see your work until they're on a ladder.
- ⭐Epic Roofing has 1,305 reviews at 4.7★. Review volume directly impacts local pack ranking, especially for high-consideration services like roof replacement.
- 🔍Advanced Level and ATCO both rank for 'emergency roof repair calgary' despite fewer photos, suggesting stronger keyword signals in their GBP posts and service descriptions.
🔑 Keyword strategy
July in Calgary means post-hailstorm season and peak roofing demand. Homeowners are actively searching for hail damage assessment and emergency repairs after spring storms, while planning larger replacement projects before winter. Your keywords balance immediate-need terms (emergency repair, hail damage) with considered purchases (replacement, contractor selection).
- 🎯roofing calgary
- 🎯roof replacement calgary
- 🎯hail damage roof calgary
- 🎯emergency roof repair calgary
- 🎯roofing contractor calgary
📍 Your local search ranking Live
New to this? Each pin is a spot on the map where we asked Google "who shows up for roofing calgary?" — the number is where you ranked from that spot (1 = top of the map results, "—" = not in the top 20). Green clusters = neighbourhoods where you're already winning; red or empty pins = areas where competitors are outranking you. Use this to spot service areas worth targeting in your next blog, GBP post, or Google Ad.
Showing: roofing calgary — your local-pack position when searched from each pin.
Top 3
4–10
11–20
21+
Not ranking
Avg position: #15 across 9 grid points
Tracked Keywords — click one to set as primary on the map
roofing calgary
#15
roof replacement calgary
#16
hail damage roof calgary
#6
emergency roof repair calgary
#12
roofing contractor calgary
#15
Tracking 5/5 keywords. Remove one to track another.
💚 Where You Stand vs Your Competitors
— first scanWhat this shows: The exact gaps between your Google Business Profile and your top 3 local competitors — photos, reviews, rating, categories, hours, posts. Each row reads as current vs goal, where the goal is what your competitors already have. Closing the red ones is where the next jobs come from. Smart Tasks automatically queue for any category below 60.
Photos
N/A
Reviews
N/A
Posts cadence
50
Profile completeness
70 / 100
NAP consistency
8 / 10
⚠️ Google's API isn't returning your photo/review data. Common for newer or low-volume profiles. Photo & review scores are excluded from the overall — we'll add manual sync soon so you get full credit.
Read as current / goal. Each goal is set from your top competitors so the bar fills as you close the gap.
Live scoring runs weekly. Each category fires a Smart Task when it drops below 60.
📈 Before & After
Month 1Unlocks at Month 2
We're capturing your baseline this month. Next month you'll see side-by-side comparisons of rank, GBP health, photos, and review velocity.
1/2 months
📸 Photo gap vs competitors
Why photos matter: Google ranks profiles with fresh, varied photos higher in the local pack — and customers are more likely to click a listing with lots of real job photos. We compare your photo count against your top 3 local competitors and tell you what kinds of shots they're posting that you aren't. Aim to match or beat their count.
"Wait, I have more photos than that on my GBP!" The number here is what Google's public API returns — which is often fewer than what's in your dashboard. Google filters out photos that are blurry, poorly lit, low resolution, duplicates, or tagged as flagged/under review. If you uploaded 25 but we see 18, that's 7 photos Google is quietly hiding from search results. Re-shoot those in good lighting (natural daylight, no flash, landscape orientation) and re-upload — the count here will rise within a week.
"Wait, I have more photos than that on my GBP!" The number here is what Google's public API returns — which is often fewer than what's in your dashboard. Google filters out photos that are blurry, poorly lit, low resolution, duplicates, or tagged as flagged/under review. If you uploaded 25 but we see 18, that's 7 photos Google is quietly hiding from search results. Re-shoot those in good lighting (natural daylight, no flash, landscape orientation) and re-upload — the count here will rise within a week.
You
0
Competitor avg
90
You're 90 photos behind.
📋 Shots your competitors are posting (check off as you take them):
🗓️ This month for roofing in Calgary Live
What this is: A monthly calendar of named local events, weather windows, search trends, and rebate deadlines that your competitors are probably ignoring. Each item includes a tactical move — keyword, partner type, GBP post angle, or offer. Treat this as a starting point, not gospel: always verify specific dates, dollar amounts, rebate program details, and festival schedules with the official source before publishing. We can occasionally get a number slightly off — a 30-second double-check protects your credibility.
Calgary hailstorm season peaks July-August — 2020 storm caused $1.2B damage, 70,000+ insurance claims
Launch a 'Post-Storm Roof Inspection' campaign targeting keyword 'hail damage roof inspection Calgary' with a free 30-minute assessment offer; create a GBP post series showing before/after hail damage photos from past Calgary storms; partner with 3-5 local insurance adjusters (like Cunningham Lindsey or ClaimsPro) to be their recommended roofer for Calgary NE neighborhoods; publish a blog 'How to Spot Hail Damage on Calgary Roofs After a Storm' with photos of granule loss and dented vents specific to Alberta shingles
Calgary Stampede July 5-14 brings 1.2M visitors — capture homeowner traffic planning renos during time off
Run a 'Stampede Special: Book Your Fall Roof Replacement Now, Get $500 Off' promotion valid July 5-21; target Google Ads for 'roof replacement Calgary' during Stampede week when locals research home projects during vacation days; create a GBP post with a cowboy-hat-wearing roofer offering 'no-BS roof quotes faster than a barrel race'; send direct mail to 2,000 homes in Monterey Park, Marlborough Park, and Pineridge (Calgary NE zip codes near your location) with Stampede-themed postcard
Calgary UV index peaks at 8-9 in July — asphalt shingle degradation accelerates, perfect inspection window
Create a 'Summer Roof Health Check' landing page targeting keyword 'roof inspection Calgary NE' emphasizing how July UV exposure reveals weak spots before fall; offer drone roof inspections for $149 with thermal imaging to show heat loss patterns; publish a YouTube video 'Why July is the Best Month for Calgary Roof Inspections' featuring actual thermal footage from Calgary NE homes; pitch this story to Calgary Herald Home section and Livabl Calgary blog as expert commentary on preventative maintenance
Google Trends: 'emergency roof repair' searches spike 340% in Calgary during July-August storm season vs January
Optimize your GBP listing with '24/7 Emergency Roof Repair Calgary NE' in the business description; create a dedicated emergency landing page targeting 'emergency roof repair Calgary' with click-to-call button, real-time availability calendar, and case study of a 2-hour response to Forest Lawn hail emergency; set up Google Ads with ad extensions showing '2-Hour Emergency Response' and 'Insurance Direct Billing'; record a 60-second video for your GBP profile showing your truck stocked with tarps and emergency supplies
Calgary public schools close June 28 — homeowners available for daytime roof consultations until Sept 3
Offer 'Summer Vacation Roof Consults' with flexible 9am-7pm appointment slots targeting working parents who can meet during the day in July-August; create a Facebook ad campaign targeting Calgary NE homeowners aged 35-55 with messaging 'Kids at camp? Time for that roof quote you've been putting off'; partner with 2-3 local summer camps (like YMCA Calgary or City of Calgary day camps in Marlborough, Rundle, or Pineridge) to sponsor a 'safety week' and distribute branded materials to parents mentioning your roofing services
Alberta climate data: July wind gusts average 40-60 km/h in Calgary — loose shingles and flashing failures spike
Launch a 'Wind Damage Prevention Package' for $299 including inspection, re-nailing loose shingles, and flashing reinforcement; target keyword 'wind damage roof repair Calgary' with a blog post citing Environment Canada wind data for YYC and showing common wind-failure points on Calgary-area ranch homes; create a GBP post with a photo of wind-lifted shingles from a recent Calgary NE job with caption 'July winds found this weakness — we fixed it in 3 hours'; send an email to past customers (2018-2021 roof replacements) offering a $99 wind-resilience check since their roofs are now 3-6 years old
⚠️ Verify before publishing: Always confirm specific dates, dollar figures, rebate amounts, and event schedules with the official source. Use this calendar as your strategic starting point — not as fact-checked copy.
⭐ Reviews
🪧 Your QR Review Poster is ready
Print it and hang it at your counter, on the truck, or hand it to happy customers. They scan with their phone camera → opens Google review in 5 seconds. The single highest-ROI thing you can do this month.
💬 Review Outreach Toolkit
Templates + scripts to actually generate reviews — not just respond to the ones you already have.
▾
📅 The cadence that works
24hSend the post-job message while the job's fresh in their mind.
7dGentle nudge if no review yet. Most people just forgot.
next jobFor repeat customers, ask after job #2 or #3 — they have more to say.
📱 SMS templates (highest response rate — 30-45% of customers reply or click)
Post-job ask (24h after)
Hey {{first_name}}! The Happy Roofer here — thanks for trusting us with the job today. If you've got 30 seconds and we earned it, a Google review would mean the world: https://www.google.com/maps/search/?api=1&query=The%20Happy%20Roofer%201180%2032%20Ave%20NE%2C%20Calgary%2C%20AB%20T2E%206M8
Thanks!
7-day nudge
Hey {{first_name}}, The Happy Roofer here — just circling back. If we did right by you, a quick Google review really helps small shops like ours: https://www.google.com/maps/search/?api=1&query=The%20Happy%20Roofer%201180%2032%20Ave%20NE%2C%20Calgary%2C%20AB%20T2E%206M8
No pressure either way!
Repeat customer (job #2+)
Hey {{first_name}} — appreciate you having us back. If you've got a minute, a Google review from a repeat customer carries a lot of weight: https://www.google.com/maps/search/?api=1&query=The%20Happy%20Roofer%201180%2032%20Ave%20NE%2C%20Calgary%2C%20AB%20T2E%206M8
Thanks for the trust.
📧 Email templates (better for residential or B2B with a paper invoice)
Post-job ask (subject + body)
Subject: Quick favor — Google review for The Happy Roofer?
Hi {{first_name}},
Thanks again for the job today. We hope everything looks great.
If you've got 30 seconds, a Google review would help more than you'd think — small shops like ours live and die by them:
https://www.google.com/maps/search/?api=1&query=The%20Happy%20Roofer%201180%2032%20Ave%20NE%2C%20Calgary%2C%20AB%20T2E%206M8
Even a short one makes a real difference. Thanks for the trust.
— The The Happy Roofer team
7-day follow-up
Subject: Following up — how'd we do?
Hi {{first_name}},
Just circling back from last week. We're always trying to get better, and the fastest way for us to know is hearing from people we've worked with.
If we did right by you, a Google review goes a long way:
https://www.google.com/maps/search/?api=1&query=The%20Happy%20Roofer%201180%2032%20Ave%20NE%2C%20Calgary%2C%20AB%20T2E%206M8
If something wasn't right, hit reply and let us know — we'd rather fix it than have it sit.
— The Happy Roofer
🗣️ Crew + office scripts (say it in person — way higher conversion than text)
Crew — at job close-out
"Hey, before I head out — if everything looks good, we'd really appreciate a quick Google review. I'll text you the link right now so you don't lose it. Takes 30 seconds. Means a lot to the shop."
Office — at payment / invoicing
"Thanks for taking care of that. One last thing — I'm going to text you a Google review link. If we earned it, even a short review really helps us. No pressure, but it makes a big difference."
Owner — to repeat customer
"I really appreciate you having us back. Quick favor — would you mind dropping a Google review whenever you've got a minute? Coming from a repeat customer it carries a lot of weight."
🌱 Your toolkit is ready. Open each item, copy what you need, and use it with your customers. Refresh monthly — we deliver a new set every cycle.
Why we drafted replies for you: Google's local ranking rewards businesses that respond to every review — yes/no, good or bad. We pull your latest reviews, draft a short reply in your voice, and you can copy-paste straight to your GBP dashboard. Aim to respond within 48 hours.
0
Total reviews
0.0★
Average rating
0
Need response
No new reviews waiting for a response. Nice work.
🤖 AI Search Visibility NEW
Why this matters now: Customers increasingly ask ChatGPT, Gemini, Grok, and Google AI Overviews for local recommendations — and these AI engines name specific businesses. Getting cited is the new top spot. We test 5 informational, question-style queries across 4 AI platforms and track who gets recommended. Tracked: your citation count, your competitors who got cited instead, sentiment, and the exact phrases AI uses about you.
Google AI Overviews
0 / 5
queries you were cited in
ChatGPT
1 / 5
queries you were cited in
Gemini
0 / 5
queries you were cited in
Grok
1 / 5
queries you were cited in
🥊 Competitors getting cited instead of you
| Epic Roofing & Exteriors | 9 mentions | 4.5× vs you |
When customers ask AI for recommendations, these names come up. Your job: out-publish them on the informational queries listed below. Want help? Click here to ask us how →
💬 How AI describes you
What these mean in plain English:
SAIV (Share of AI Voice) — 0/100: Out of every conversation AI engines had about your niche in your city, how often did your business show up vs the competition? Think of it like Share of Voice on the radio — except the radio is now ChatGPT, Gemini, Grok and Google AI Overviews. 0 = AI never mentioned you. 50 = you came up roughly half the time. 100 = you owned the conversation. Anything above 30 is strong for a local business; under 15 means competitors are eating the AI airtime.
Sentiment — absent: When AI does mention you, what tone does it use? Positive = AI describes you with trust signals (reliable, recommended, well-reviewed). Neutral = AI lists you as an option with no opinion either way. Negative = AI mentions concerns (red flag — usually tied to bad reviews, missing info, or stale GBP).
Why it matters: SAIV tells you if AI is recommending you. Sentiment tells you how it's recommending you. Both move when you fix GBP health, get more reviews, and publish consistent content — which is exactly what this kit is doing.
SAIV (Share of AI Voice) — 0/100: Out of every conversation AI engines had about your niche in your city, how often did your business show up vs the competition? Think of it like Share of Voice on the radio — except the radio is now ChatGPT, Gemini, Grok and Google AI Overviews. 0 = AI never mentioned you. 50 = you came up roughly half the time. 100 = you owned the conversation. Anything above 30 is strong for a local business; under 15 means competitors are eating the AI airtime.
Sentiment — absent: When AI does mention you, what tone does it use? Positive = AI describes you with trust signals (reliable, recommended, well-reviewed). Neutral = AI lists you as an option with no opinion either way. Negative = AI mentions concerns (red flag — usually tied to bad reviews, missing info, or stale GBP).
Why it matters: SAIV tells you if AI is recommending you. Sentiment tells you how it's recommending you. Both move when you fix GBP health, get more reviews, and publish consistent content — which is exactly what this kit is doing.
SAIV (Share of AI Voice): 0/100 · Sentiment: absent
"The Happy Roofer is not mentioned in any AI responses; competitors like Clever Roofing, Calgary Roofing Pros, and Rocky Mountain Roofing dominate the recommendations instead."
Informational queries tested (5)
- "what is the best roofing company in calgary"
- "how much does roofing cost in calgary"
- "how to choose a roofing contractor in calgary"
- "how much does roof replacement cost in calgary"
- "how much does hail damage repair cost in calgary"
Most local SEO tools haven't shipped multi-platform AI tracking yet. You're early.
🔗 Name, address, phone check
Why this matters: Google's #1 trust signal for local search is whether your Name/Address/Phone is consistent everywhere it appears. If your Google listing says one thing and your website (or Yelp, or BBB) says another, Google trusts your profile less — which hurts your ranking. We do one real check today: your Google listing vs what you told us. The 10 directories below are a checklist of other places worth claiming — we don't audit them yet, but each one you claim makes your local presence stronger.
Google listing check pending
We'll check this on the next scan once we have your Places data.
📋 10 places to claim your listing
Open each, claim or update your listing, tick it off as you go. Don't need to do all in one sitting.
📍 GBP Posts (publish to your Google Business Profile)
📍 GBP Post · July Wind Check
Calgary's summer wind gusts can lift shingles you didn't even know were loose. We're seeing a lot of wind damage in the NE this month — especially on older ranch-style homes. If you've noticed shingles in your yard or hear flapping during windstorms, that's your roof telling you something. Book a free inspection before a small issue turns into a leak.
📍 GBP Post · Peak UV Season for Roofs
July's UV index sits at 8-9 in Calgary, which means your shingles are taking a beating right now. The good news? This is actually the best time to spot early degradation — granule loss and cracking show up clearly in strong sunlight. If your roof is over 15 years old, a quick inspection now can save you from emergency repairs later. We offer straightforward assessments with no pressure to buy.
📱 Social Captions (Instagram + Facebook)
📱 Instagram caption 1
Hailstorm season is here. If you were hit in the last few weeks, even small dents can lead to leaks down the road. We're scheduling free 30-minute inspections all month for Calgary NE homeowners — no commitment, just an honest look at what's going on up there. Call or DM to book. #CalgaryRoofer #HailDamage #RoofInspection #CalgaryNE #TheHappyRoofer
🕒 Best time to publish on Instagram
📱 Facebook caption 2
Kids are out of school and you've finally got time for that roof quote you've been putting off. We're running extended hours through August — 9am to 7pm — so you can meet with us when it actually works for your schedule. Family-owned, no upsells, just upfront pricing and a 10-year workmanship warranty. Let's get it done this summer.
🕒 Best time to publish on Facebook
📱 Instagram caption 3
Behind the scenes: our trucks are stocked for emergency calls 24/7. Tarps, tools, flashing, sealant — everything we need to stop a leak fast. July and August are our busiest months for storm damage, and we pride ourselves on being ready when Calgary homeowners need us most. That's 20 years of doing it right. #EmergencyRoofing #CalgaryStorms #RoofRepair #YYC #FamilyBusiness
🕒 Best time to publish on Instagram
📱 Facebook caption 4
Quick tip: if you see granules from your shingles collecting in your gutters or downspouts, that's a sign your roof is aging. It doesn't mean you need a replacement tomorrow, but it does mean you should get an inspection sooner rather than later. July's intense sun makes this easier to spot. We're happy to take a look and give you a straight answer on how much life your roof has left.
🕒 Best time to publish on Facebook
📍 25 hand-picked directories for your niche + area. Submit your NAP (name, address, phone) to each, then tick it off here. Progress saves automatically and unlocks the Citation Crusher trophy at 20 of 25.
🗂 Citations worksheet
0/25 submitted
What's a citation? Any online directory that lists your business name, address, and phone — Yelp, BBB, Yellow Pages, Bing Places, Apple Maps, niche trade directories, etc. The more (consistent) citations you have, the more Google trusts you exist and operates where you say you do. How to use this list: Click "Submit →" to open the directory, paste in your info from your GBP (keep it identical), submit it, then tick the box. Plan on 2-3 per week.
-
Google Business Profile Non-negotiableSubmit →
-
Bing Places Non-negotiableSubmit →
-
Apple Maps Non-negotiableSubmit →
-
Yelp Non-negotiableSubmit →
-
Facebook Business Page Non-negotiableSubmit →
-
Better Business Bureau Non-negotiableSubmit →
-
HomeStars Non-negotiableSubmit →
-
Yellow Pages Canada Non-negotiableSubmit →
-
Angi (Angie's List) Non-negotiableSubmit →
-
Houzz Non-negotiableSubmit →
-
Canadian Roofing Contractors Association Niche-specificSubmit →
-
Calgary Chamber of Commerce Niche-specificSubmit →
-
BBB Calgary Niche-specificSubmit →
-
RoofingContractor.com Niche-specificSubmit →
-
National Roofing Contractors Association Niche-specificSubmit →
-
Alberta Roofing Contractors Association Niche-specificSubmit →
-
HomeAdvisor Niche-specificSubmit →
-
Thumbtack AggregatorSubmit →
-
Porch AggregatorSubmit →
-
Manta AggregatorSubmit →
-
MapQuest AggregatorSubmit →
-
Foursquare AggregatorSubmit →
-
Brownbook AggregatorSubmit →
-
EZlocal AggregatorSubmit →
-
ChamberofCommerce.com AggregatorSubmit →
📊 Monthly report
Locked until end of month
Your first monthly report drops on the 1st of next month. We're already capturing daily snapshots — rank, GBP Health, content shipped, photos uploaded, AI Search visibility, NAP score, reviews — so when the month closes you'll see exactly what moved and what to focus on next.
What's in it: 📍 keyword rank movement · 📊 competitor gap closing · 📸 photos uploaded · ✅ tasks completed · 🤖 AI Search mentions · 🔗 NAP score · ⭐ review momentum · 🎯 next-month focus.
📥 You'll get a PDF emailed on the 1st, and it'll live here permanently so you can scroll back through your history.
What's in it: 📍 keyword rank movement · 📊 competitor gap closing · 📸 photos uploaded · ✅ tasks completed · 🤖 AI Search mentions · 🔗 NAP score · ⭐ review momentum · 🎯 next-month focus.
📥 You'll get a PDF emailed on the 1st, and it'll live here permanently so you can scroll back through your history.
📚 The foundation. Skim these once, refer back any time. New guides land here as we build them.
How to Use Your Hub
Quick orientation — where everything lives, the weekly rhythm, what to do first.
Open guide →
SEO For Idiots
Plain-English primer on local SEO. No jargon. Skim it in 10 minutes — you'll "get it" faster than 90% of shop owners.
Open guide →
GBP Foundation Setup
Step-by-step checklist for claiming, verifying, and optimizing your Google Business Profile. Do this before anything else.
Open checklist →