Execution Plan —
HVAC Energy Solutions
Two-week sprint plan, standing responsibilities, and the Growth upgrade path. This is the operating doc — not the pitch.
Build & launch in two-week sprints
Sprints 1–2 run on the Starter plan. Growth activates at the start of Month 2 — Sprints 3–6 reflect that expanded scope. Each sprint has a clear focus and a realistic task load for a solo operator managing multiple clients.
| Task | Owner | Notes |
|---|---|---|
| Kickoff call — confirm scope, service list, target cities, weekly call cadence | Both | 60 min · IHD sends agenda 24 hrs in advance |
| Grant platform access: GBP, GA4, website CMS | Kyle | Via invite only — IHD sends step-by-step guide per platform · Kyle retains owner-level control |
| GBP full audit + optimization — categories, services, hours, photos, Q&A | IHD | Publish all updates before end of sprint · fastest path to local pack improvement |
| GA4 property setup + conversion event configuration | IHD | Conversion events: calls, form submits · baseline data collection begins immediately |
| Set up UTM naming convention + 2 call tracking numbers | IHD | Website call tracking number + one for future Meta use · UTM doc shared with Kyle for CRM logging |
| Submit LSA application — Google Guaranteed verification initiated | IHD | Provide business license + insurance docs to IHD · verification typically takes 1–2 weeks |
| Provide business license + liability insurance docs for Google Guaranteed | Kyle | Email to [email protected] · required before IHD can submit LSA verification |
| Join 5–10 Facebook community groups across service area cities | Kyle | Antioch, Brentwood, Concord, Pittsburg, Oakley, Walnut Creek · personal account · read-only for now |
Platform access granted · GBP fully optimized and live · GA4 configured + tracking calls and form submits · UTMs and call tracking numbers live · LSA application submitted with supporting docs · Kyle in all target Facebook Groups.
| Task | Owner | Notes |
|---|---|---|
| Citation audit — check NAP consistency across Google, Yelp, Bing, Apple Maps, Angi, BBB | IHD | Identify all inconsistencies · corrections submitted before end of sprint |
| Citation corrections submitted across all directories | IHD | NAP fully consistent by sprint close · one-time Starter deliverable |
| Review system audit — assess current review count, rating, and request workflow | IHD | One-time Starter deliverable · IHD delivers findings and recommended request template |
| LSA campaigns go live (pending Google Guaranteed verification) | IHD | Starting bid at Google's recommended amount · adjusted weekly · response rate directly affects ranking |
| Keyword research — 30–40 target terms across services and service-area cities | IHD | Informs homepage punch list, local pack targets, and future service page builds |
| Homepage punch list — update headline, trust signals, CTAs, and service descriptions | IHD | Not a redesign — targeted improvements to existing homepage based on keyword research · Starter deliverable |
| Review and approve homepage punch list changes before publish | Kyle | IHD sends staging preview · feedback due within 2 business days |
| Respond to LSA calls within 2 hours during business hours | Kyle | LSA ranking is tied directly to response rate — slow or missed calls increase CPL · non-negotiable |
| Begin sending review requests after completed jobs using IHD template | Kyle | Target 2+ new Google reviews per week · priority on Antioch, Brentwood, Concord reviewers |
| Begin posting in Facebook Groups — answer HVAC questions naturally | Kyle | No promotion yet · build trust first · log any referral calls in CRM with "Facebook Group" source tag |
Citation audit complete and corrections submitted · review system audit delivered · LSA live · homepage punch list published · keyword research complete · Kyle responding to LSA calls within 2 hrs and sending review requests after every job.
| Task | Owner | Notes |
|---|---|---|
| Meta Pixel installation on hvacenergysolutions.com | IHD | Standard events configured · required before any Meta audience building or ad launch |
| Meta Conversions API (server-side tracking) setup | IHD | Growth tier deliverable · improves Meta attribution accuracy beyond browser-only Pixel |
| QA all tracking — GA4, Meta Pixel, UTMs, and both call tracking numbers | IHD | No Meta ad spend begins until all attribution is verified · IHD sends QA confirmation |
| Website redesign — deliver homepage + one service page concept on staging | IHD | Based on keyword research and approved service list · full redesign, not a patch |
| Review website design concept and provide written feedback | Kyle | One round of revisions included · feedback due within 3 business days |
| Upload customer list to Meta — begin building Lookalike Audiences | Both | Kyle provides name + email list (100+ contacts ideal) · IHD handles upload and audience configuration · audiences need 2–3 weeks to populate |
| Confirm full service list and all 9 service page topics | Both | IHD sends content brief for Kyle to review · locks in scope for Sprint 4 build |
Meta Pixel + Conversions API installed and QA'd · website design concept approved · Lookalike Audience building · service list and all 9 page topics confirmed.
| Task | Owner | Notes |
|---|---|---|
| Full website development — all pages built to approved design | IHD | Homepage + all 9 service pages + about + contact · on-page SEO applied to every page during build |
| On-page SEO — titles, meta descriptions, H1/H2 structure, schema markup | IHD | Applied using Sprint 2 keyword research · LocalBusiness + Service schema on all pages |
| Internal linking structure — all service pages cross-link logically | IHD | Strengthens local SEO signals across all service + city keyword combinations |
| Staging site review — confirm all content, services, and phone numbers are correct | Kyle | IHD sends staging link · feedback due within 3 business days · all 9 pages reviewed |
| Migrate site to IHD hosting — DNS cutover, SSL, uptime monitoring | IHD | Scheduled during low-traffic window · minimal downtime · hosting included in Growth plan |
| Website goes live — post-launch QA, GA4, Search Console, all forms verified | IHD | Sitemap submitted · index requested for all pages · all conversion tracking re-verified on live site |
| GBP updated with new website URL and revised service descriptions | IHD | Ensures GBP and live site are fully aligned post-launch |
Full website live on IHD hosting · all 9 service pages SEO-optimized · all tracking verified on live site · GBP updated and aligned with new site · sitemap submitted to Search Console.
| Task | Owner | Notes |
|---|---|---|
| First monthly performance report delivered | IHD | Covers GBP insights, LSA leads + CPL, early keyword movements, review count, website traffic |
| First monthly strategy call — review report, align on Month 2 priorities | Both | 60 min · review which channels are delivering leads · confirm Meta ad offers before launch |
| Launch Meta site visitor retargeting campaign | IHD | Warm audience from 4+ weeks of Pixel data · conversion objective · dedicated call tracking number active |
| Launch Meta Lookalike audience campaign — maintenance plan or seasonal offer | IHD | Built from uploaded customer list · targets homeowners with similar profiles in Contra Costa County |
| LSA bid optimization — adjust based on first 30 days of lead data | IHD | Dispute any invalid leads · pause low-quality job categories if CPL is outside target range |
| Keyword ranking baseline report | IHD | First positions vs. targets · identifies pages to prioritize for on-page updates in Sprint 6 |
| Approve Meta ad creative and offers before launch | Kyle | Confirm all ad copy and service descriptions are accurate · feedback within 2 business days |
| Log all incoming leads with source tag in CRM at first contact | Kyle | 5 seconds per lead · required to connect IHD channel data to booked jobs and revenue |
First report delivered and reviewed · Meta retargeting + Lookalike campaigns live · LSA bids optimized and invalid leads disputed · keyword ranking baseline established · Kyle logging all lead sources in CRM · Month 2 priorities agreed.
| Task | Owner | Notes |
|---|---|---|
| On-page SEO quick wins — update pages underperforming vs. keyword targets | IHD | Based on Search Console data and Sprint 5 ranking baseline · priority on highest-revenue service + city combos |
| Meta ad creative refresh — replace any underperforming Sprint 5 creative | IHD | Monthly creative refresh cycle begins here · test new angle or seasonal offer |
| LSA performance review — lead quality, CPL trend, budget efficiency | IHD | Adjust service categories or bid caps if CPL is outside $30–$70 HVAC target range |
| ROI dashboard live — connect GA4 and Meta data sources | IHD | Growth tier deliverable · IHD walks Kyle through dashboard on Month 3 strategy call |
| Website conversion review — analyze form submissions, call clicks, bounce rates | IHD | Identify highest drop-off pages · CTA or layout fixes applied before close of sprint if needed |
| Month 3 strategy call — full channel performance review, set Q3 priorities | Both | 60 min · review lead source log vs. booked jobs by channel · includes scale upgrade assessment |
| Share which booked jobs came from which channels | Kyle | Connects IHD channel data to revenue · informs which channels to scale in Month 4+ |
On-page quick wins applied · Meta creative refreshed · LSA within CPL target · ROI dashboard live · conversion review complete · Month 3 report reviewed · scale upgrade decision made · Q3 priorities confirmed.
What happens every month
From Sprint 7 onward, the engagement runs on a steady monthly cadence at the Growth rate. IHD manages all active channels day-to-day; the monthly strategy call keeps priorities aligned.
| Activity | Owner | Timing | What It Covers |
|---|---|---|---|
| Monthly performance report | IHD | 1st week of month | Website traffic, GBP insights, keyword rankings, LSA leads + CPL, Meta leads + CPL, review count and rating |
| Monthly strategy call | Both | Week 1–2 | Review report · confirm priorities · flag any service, pricing, or coverage area changes · review lead source log |
| LSA bid management + dispute resolution | IHD | Weekly | Bid adjustments based on lead volume and CPL · all invalid leads disputed within 7 days |
| Meta ad management | IHD | Ongoing | Campaign monitoring · monthly creative refresh · audience updates · seasonal campaign buildouts (pre-summer + pre-winter) |
| GBP management | IHD | Monthly | 2 posts per month · review responses · photo uploads · service updates as needed |
| Local SEO — content + on-page refinements | IHD | Monthly | 1 blog or local content page per month · on-page updates triggered by ranking drops or new services |
| Website monthly support | IHD | On request | Copy updates, service changes, seasonal banners · Kyle submits requests via email · included in Growth plan |
| Quarterly citation + content review | IHD | Every 3 months | Citation directory check · service pages refreshed based on seasonal demand and ranking data |
| Lead source logging in CRM | Kyle | Every lead | 5 seconds per lead at first contact · connects IHD channel data to booked jobs and revenue |
| Review requests after every job | Kyle | Every job | Use IHD-provided template · target 2+ new Google reviews per week |
| Facebook Group engagement | Kyle | 2–4 hrs/week | Answer HVAC questions · earn organic referrals · the one channel only Kyle can run · target 5–15 referral leads/month by Month 6 |
The community play only works with Kyle as the face. Veteran-owned, 25 years in the East Bay, honest and no-pressure — that story can't be delegated. Two to four hours per week answering neighbor questions in the right groups is the highest-LTV activity Kyle contributes to this engagement. It costs nothing and compounds every month.
Who owns what
A complete reference of standing responsibilities across the engagement. If it's not on this list, it belongs in the monthly strategy call.
Iron Horse Digital
| Responsibility | Cadence |
|---|---|
| GBP optimization, posts, and review responses | Monthly |
| Local keyword rank tracking + reporting | Monthly |
| LSA bid management and dispute resolution | Weekly |
| LSA lead volume and CPL reporting | Monthly |
| Citation monitoring and cleanup | Quarterly |
| On-page SEO refinements and content updates | As needed |
| Meta ad campaign management — all active campaigns | Ongoing · Growth |
| Meta creative refresh cycle | Monthly · Growth |
| Seasonal Meta campaign buildouts | Twice/year · Growth |
| Blog / local content page production | Monthly · Growth |
| Website hosting, uptime monitoring, CMS maintenance | Ongoing · Growth |
| ROI dashboard maintenance | Ongoing · Growth |
| Monthly consolidated performance report | Monthly |
| Monthly strategy call facilitation | Monthly |
| Website support (included monthly hours) | On request · Growth |
HVAC Energy Solutions (Kyle)
| Responsibility | Cadence |
|---|---|
| Respond to LSA calls within 2 hours (business hours) | Every call |
| Send review request after every completed job | Every job |
| Log incoming lead source in CRM at first contact | Every lead |
| Facebook Group engagement — answer questions, earn referrals | 2–4 hrs/week |
| Approve ad creative and web content before publish | Per sprint |
| Participate in monthly strategy call | Monthly |
| Notify IHD of service, pricing, or coverage area changes | As needed |
| Respond to urgent review flags from IHD within 24 hrs | As needed |
| Submit website update requests | On request |
What unlocks at Month 2
Month 1 on the Starter plan builds the Google foundation — GBP, LSA, citations, tracking, and the homepage. Growth activates at Month 2 and layers in the full website redesign, Meta Ads, and expanded infrastructure. No new contract — the rate moves from $1,500 to $2,500/mo.
The Starter plan is not a holding pattern — it's the highest-ROI work first. GBP and LSA are the fastest path to inbound calls for an HVAC business. Growth layers on top of a foundation that's already working.
Full Website Redesign
Complete redesign built from scratch on IHD hosting. Homepage plus all 9 service pages, each optimized for a specific service and service-area city combination. Replaces the Sprint 2 homepage punch list with a full conversion-focused site.
On-Page SEO + Schema Markup
Every page built with optimized titles, meta descriptions, H1/H2 structure, LocalBusiness schema, and internal linking. Applied during development — not as an afterthought.
Meta Pixel + Conversions API
Browser-side Pixel plus server-side Conversions API for accurate attribution. Required foundation before any Meta ad spend begins. Custom Audiences and Lookalike Audiences built from day one.
Meta Ads Management
Site visitor retargeting, Lookalike audiences from customer list, maintenance plan campaign, seasonal awareness ads, and monthly creative refresh. Ad spend paid directly by Kyle to Meta — not through IHD.
Live ROI Dashboard
Real-time cross-channel attribution connecting GA4 and Meta. Shows cost per lead and cost per booked job by channel — not just impressions. Delivered by end of Sprint 6.
IHD Hosting + Monthly Support
Website hosted on IHD platform with uptime monitoring and CMS maintenance included. Monthly support hours for copy updates, new service pages, and seasonal banners — no separate project invoices for core scope.
| Plan | Monthly Fee | Ad Spend | What's Included |
|---|---|---|---|
| Starter (Month 1) | $1,500 / mo | None required | GBP · Google LSA · Citation Cleanup · Review Audit · GA4 · Call Tracking · UTMs · Homepage Punch List · Monthly Report |
| Growth (Month 2+) | $2,500 / mo | Paid direct to Google & Meta | Everything in Starter + Full Website · 9 Service Pages · Meta Pixel + CAPI · Meta Ads · IHD Hosting · ROI Dashboard · 2 hrs strategy/mo |
Ad spend is paid directly by HVAC Energy Solutions to Google and Meta — not through Iron Horse Digital. IHD never marks up ad spend.