Veraa. Client Performance Dashboard

Hemma Decks — Marketing Performance

Google Local Services Ads + Meta Ads · Updated Sep 25, 2026 · Sept: LSA thru 9/24, Meta thru 9/25 · August final except LSA spend (statement pending)
This Month · September 2026

This monthSeptember 2026 · LSA thru Sep 24 · Meta thru Sep 25

Billable leads
—
first export populates this
Ad spend
—
LSA + Meta, month-to-date
Blended CPL
—
LSA Sept spend still to come

September is running ahead of August on paid volume, not behind it: 23 charged LSA leads plus 57 Meta leads is 80 billable leads through the 25th, a rate of 3.2 a day against August's 2.5. LSA is down 21% month over month — and that is the season, not the account: Ohio deck search demand fell 22% over the same stretch. Meta more than covered the gap, with the Summer campaign at $50.04 across 101 leads, the best cost per lead anything has produced. What did get worse is price, not count: Meta's cost per lead moved from $44.36 in August to about $61 in September, because budget doubled into thinner demand. That is the number to decide on, not the lead count.

This weekWeek of Sep 21

LSA leads (wk of Sep 21)
5
3 charged · 1 in review · thru Sep 24
Campaigns running
2
Summer 2026 + Fall 2026 Web — both live against the same audience
August close-out
1
remaining: LSA Aug billing statement / transactions total
Meta wins
$96,316
4 jobs: Morino, Lisa Jones, Brenda Dey, Greg Denk

Money — liveSeptember funnel & ROI

Every number cell is editable. Meta leads = lead-form results + “+ calls” (GHL contacts with source “Meta Landing Page” — Meta's export never counts them). Everything recalculates as you type and syncs to the Season tab.
SourceLeadsAd spendCPLEst. bookedCost / apptDealsClose %RevenueROAS
Google LSA — — — —
Meta Ads forms + calls + — — — —
September total ——— ———— ——
Weekly charts and city maps for September appear with the first export of the month. Values save automatically.

Platform detailSeptember so far · LSA Sep 1–24 · Meta Sep 1–25

Google LSA
Leads
34
23 charged · 8 filtered · 2 credited · 1 in review
Disputes won
2
Sep 1 + Sep 9 Akron — both credited back
Cities (charged)
Akron ×2, Medina ×2, Parma Hts, Brooklyn Hts, Solon, Barberton, N. Royalton, Twinsburg, Hudson, Montrose-Ghent, Northfield, Strongsville, N. Olmsted, Brunswick, Canton
Spend
—
first Transactions pull mid-month
LSA leads by week
Meta Ads — consolidating to one campaign
CampaignStatusLeadsCost per lead
Hemma | Leads | Summer 2026active101$50.04
Hemma | Leads | Fall 2026 Webactive2$62.00
Hemma | Leads | creative test | 2026inactive13$55.23
Hemma | Leads | Landing Page | 2026inactive2$151.59
Meta — all campaigns, Jul 9 – Sep 25—118$52.54
Two campaigns are live at once. Summer 2026 and the new Fall 2026 Web are both running against the same audience, which is the split that cost us in September — one auction, one campaign. Summer is the proven unit at $50.04 across 101 leads, the best cost per lead of anything Meta has run. Decide which one carries the fall and turn the other off. Historically, the two legacy campaigns converged at $54.78 and $55.06 per lead — the Creative Test's $12 opening weekend was a small-sample illusion, and running two campaigns against the same audience split Meta's learning and raised the price for both. They retire into one Landing Page campaign at $150/day, launched Sep 17 and still in learning (no leads yet on $132.58 — normal for day one). Judge it on cost per appointment against the $232 baseline at day 14, not on cost per lead in week one.

What we recommendRight now

  • 1 · Hold Meta budget — shift the mix toward the Creative Test. At $35.55/lead vs the lead form's $47.73, and with its landing-page leads already booking appointments, the Creative Test has earned a larger share of the same total budget. Move budget between campaigns before adding new dollars.
  • 2 · Don't raise total spend until intake catches up. September's audit still shows paid leads reaching the CRM without a record or source. More budget on a leaky intake buys leads nobody calls — fix the lists first, then scale into October with confidence.
  • 3 · Work the two audit lists this week. 72 contacts need a source stamp and 116 paid leads have no CRM record — including September's first three Meta form fills. The median win closes in 16 days, so speed on these lists is revenue, not admin.
  • 4 · One number left on August. Send the LSA August billing statement and the month locks in exactly. Reviews keep firing on completed jobs into fall — review velocity is still LSA's biggest ranking lever.
Google review count
update weekly from GBP
Average rating
rating + count drive LSA rank
Why these are here
Review velocity is the biggest lever on LSA ranking. Confirm the post-job review automation fired on every completed project — every call.
Past Months

ArchivePick a month

August 2026

Month summaryAugust 2026 · final numbers pending month-end exports

Billable leads
78
38 LSA charged + 40 Meta
Ad spend
$2,586
LSA spend still the 8/17 total — statement pending
Blended CPL
$33.15
understated until LSA Aug spend lands
Final verdict
2nd
busiest month of the season — 92 total inquiries

August, final: the seasonal dip reversed and August finished as the second-busiest month of the season — 52 LSA leads (38 charged, 73%) with the week of Aug 24 hitting 13, and Meta beat July outright: 40 leads vs 28, at $44.36 CPL on $1,774.53 spend. Both late-month disputes (Mayfield call, Medina message) resolved to charged. The one number still open is August's LSA spend — the transactions total or billing statement closes it.

Money — liveAugust funnel & ROI

Every number cell is editable; leads and spend are pre-filled from the exports. Meta leads = lead-form results + “+ calls” (GHL contacts tagged Meta-Ads-Call — Meta's own export never counts them). Add estimates booked, deals closed, and revenue from the job log — everything recalculates, and the tiles above follow.
SourceLeadsAd spendCPLEst. bookedCost / apptDealsClose %RevenueROAS
Google LSA — — — —
Meta Ads — — — —
August total ——— ———— ——
Leads = billable only (LSA charged + Meta lead forms) — August's 11 free/filtered LSA leads are excluded so costs aren't understated. Values save in this browser on this device.

Platform detailGoogle LSA — August

Total leads
52
37 calls · 15 messages
Charged (billable)
38
73% of all leads — best rate since May
Free / not charged
14
both disputes resolved → charged
Spend
$811 thru 8/17
Aug statement closes this number
LSA leads per week
Week beginning (Mon) · final · Aug 31 bar is the month's Monday spillover
Charged Not charged
Where August's leads came from
Top cities, LSA leads through Aug 20
  • The dip fully reversed. Weekly leads went 13 → 8 → 12 → 13 — the week of Aug 24 tied the season's second-best, and August finished at 52 LSA leads, within two of May.
  • All reviews resolved — every one to charged. The Aug 20 Akron call, the Aug 26 Mayfield call, and the Medina message (Mike Mendicino) all finalized as billable. Google's auto-filtering still caught 14 junk leads at no cost.
  • Cleaner mix, wider map. No repair-flagged leads all month; geography kept spreading — North Royalton ×4, Medina/Canton/Twinsburg ×3, plus Massillon, Green, Macedonia, Seville, and a 44645 first.

Platform detailMeta Ads — August

“Hemma | Leads | Summer 2026” · $57/day · lead form objective
Leads (final)
40
▲ beat July's 28 by 43%
Spend (final)
$1,774.53
Aug 1–31 · $57/day budget
Cost per lead (final)
$44.36
▼ 3% vs July's $45.85
Reach
14,512
39,543 impressions · freq 2.7
  • Month two beat month one. 40 leads vs July's 28 on the same budget, at a slightly better CPL — the campaign is compounding. The mid-month soft stretch fully recovered. Hold the budget into September.
July 2026

Month summaryJuly 2026

Billable leads
82
54 LSA charged + 28 Meta
Ad spend
$4,226
$2,942 LSA + $1,284 Meta
Blended CPL
$51.54
per billable lead
Peak of the season
76
LSA leads — the year's high

Money — liveJuly funnel & ROI

SourceLeadsAd spendCPLEst. bookedCost / apptDealsClose %RevenueROAS
Google LSA — — — —
Meta Ads — — — —
July total ——— ———— ——

Platform detailGoogle LSA — July

Total leads
76
58 calls · 18 messages
Charged (billable)
54
71% of all leads
Free / not charged
22
21 not charged + 1 credited
CPL
$54.49
per charged lead
LSA leads per week — July
Week beginning (Mon) · edge weeks can span months
Charged Not charged
Where July's leads came from
Top cities, July LSA leads
  • Repairs made up a big slice. 20 of 76 LSA leads were repair-flagged (boards, railings, staining, ledger work).
  • People searched for Hemma by name. 8 leads came from direct business searches — the brand pulling demand on its own.
  • Dispute filtering worked. Wrong numbers, an HVAC call, and a Craigslist misdial screened at no cost; one charged lead disputed and credited back.

Platform detailMeta Ads — July

Leads
28
0.9 per day
Spend
$1,283.93
of ~$1,767 budgeted
Cost per lead
$45.85
 
Reach
9,648
27,600 impressions · freq 2.9
June 2026

Month summaryJune 2026 · LSA only — Meta launched July 1

LSA leads
73
54 charged · 19 free/filtered
Charge rate
74%
in line with season avg
Spend & CPL
—
CPL — · from the table below
Context
Second-busiest month of the season — early-summer demand in full swing.

Money — liveJune funnel & ROI

SourceLeadsAd spendCPLEst. bookedCost / apptDealsClose %RevenueROAS
Google LSA————
June total—————————
LSA only — Meta launched July 1. Leads and spend stay in sync with the Season tab automatically.
May 2026

Month summaryMay 2026 · LSA only — Meta launched July 1

LSA leads
54
44 charged · 10 free/filtered
Charge rate
81%
best of the season
Spend & CPL
—
CPL — · from the table below
Context
Appointment-heavy month — many “APPT” flags in the inbox notes. One bad lead credited.

Money — liveMay funnel & ROI

SourceLeadsAd spendCPLEst. bookedCost / apptDealsClose %RevenueROAS
Google LSA————
May total—————————
LSA only — Meta launched July 1. Leads and spend stay in sync with the Season tab automatically.
April 2026

Month summaryApril 2026 · LSA only — Meta launched July 1

LSA leads
44
28 charged · 16 free/filtered
Charge rate
64%
2 disputes credited
Spend & CPL
—
CPL — · from the table below
Context
Spring ramp — volume tripled from March as the season opened.

Money — liveApril funnel & ROI

SourceLeadsAd spendCPLEst. bookedCost / apptDealsClose %RevenueROAS
Google LSA————
April total—————————
LSA only — Meta launched July 1. Leads and spend stay in sync with the Season tab automatically.
March 2026

Month summaryMarch 2026 · LSA launched Mar 14

LSA leads
15
10 charged · 5 free/filtered
Charge rate
67%
first 2½ weeks live
Spend & CPL
—
CPL — · from the table below
Context
Launch month — live Mar 14. A small Google Search ads test also ran ($278.81, 33 clicks), tracked separately from LSA.

Money — liveMarch funnel & ROI

SourceLeadsAd spendCPLEst. bookedCost / apptDealsClose %RevenueROAS
Google LSA————
March total—————————
LSA only — Meta launched July 1. Leads and spend stay in sync with the Season tab automatically.
Season 2026 · annual run

Annual runSeason 2026 · Mar 14 – Sep 24 · September accruing

Total LSA leads
348
238 calls · 110 messages
Charged (billable)
251
72% of all leads
Filtered at no cost
90
+ 6 disputes won (credited) · 1 in review
Booked appointments
23+
flagged “APPT” in the inbox notes

Annual reviewSeason money — 2026

Everything spent and every billable lead, all year — every number cell is editable. LSA spend is loaded from the monthly billing statements, net of promo codes and invalid-activity refunds (attributed to their service month). Print this tab at season's end for the annual review.
Season ad spend
$13,032
all platforms, full season
Season billable leads
264
211 LSA charged + 53 Meta
Season blended CPL
$45.89
per billable lead, all season
Season ROAS
—
revenue:
MonthLSA chargedLSA spendMeta leadsMeta spendAppts bookedMonth CPL
March (from 3/14)—
April—
May—
June—
July—
August—
September (to date)—
Season 2026211—53———
Month CPL = (LSA + Meta spend) ÷ (LSA charged + Meta leads). August LSA spend is the Aug 17 transactions total. Values save in this browser on this device.

TrendThe season's shape

LSA leads per month since launch
March 2026 – August 2026 · all months final
Charged Not charged / credited
Where leads come from — all time
Top cities across all 348 LSA leads

Market demandIs it us, or is it the season?

Five years of Google search demand for decks in Ohio — "composite decking" and "deck cost," Sep 2021 through Sep 2026 — turned into a month-by-month index. 1.00 is an average month. This is what the market does every year no matter what we spend, so we can tell a normal slowdown from a real one.
September demand vs a normal September
Normal
32.2 this year vs a 5-year September average of 32.4 — the most ordinary September on record
August was the outlier
+20%
above a normal August — the peak was high, not the trough low
Market, Aug → Sep
−22%
a normal Aug → Sep is −7%
Hemma LSA, Aug → Sep
−21%
38 charged → ~30 projected · tracking the market
Deck search demand by month — Ohio, 5-year average
1.00 = an average month · May peaks at 1.69, December bottoms at 0.56 · September is highlighted
MonthDemand indexNormal change2026 actualvs normal
Normal change is the month-over-month move averaged across 2022–2025. "vs normal" is the gap in percentage points — positive means demand ran hotter than the season usually delivers. September 2026 is three weeks of data.

What comes nextThe rest of the year, before it happens

LSA leads projected off September's run rate and the seasonal index. These are the numbers to staff and budget against — not a forecast of whether the season is "good."
MonthDemand indexChange from priorProjected LSA charged
September (actual pace)0.87−22%~30
October0.71−19%~24
November0.59−16%~20
December0.56−4%~19
Q4 total——~63
Meta is not on this table — Meta volume is set by budget, not by season. What season does to Meta is raise the cost: expect CPL to drift from today's $54.97 toward $65–75 by December at the same $150/day. Budget for the CPL, not for fewer leads.

Read this firstWhat the demand curve actually says

  • September is not soft. August was loud. Take the first three weeks of September in each of the last six years and you get 28.5, 33.3, 32.2, 32.7, 31.8 — and 32.2 this year. September 2026 is the most ordinary September on record. What changed is that August 2026 ran 20% above a normal August, so the step down felt like a cliff.
  • The drop starts in August, not September. A normal July → August is −27%, the steepest month of the year. By the time slow weeks are noticeable, the decline is already six weeks old. The fall plan has to be built in July.
  • Hemma is tracking the market, not losing to it. Search demand fell 22% August to September; Hemma's charged LSA leads fell about 21%. No share lost, no channel broken.
  • The first half of 2026 was genuinely exceptional. Year over year, demand ran +42% in January, +53% in March, +41% in April, +40% in June. Then July came in flat, August −9%, September −2%. The boom cooled to normal in the back half — worth knowing before 2027 targets get set off a first-half run rate.
  • March is the switch. February → March is +37% and March → April another +38%. Demand more than doubles in eight weeks. Budget should be in market by late February, not April.

What the season saysTakeaways

  • The season has a clear shape. Volume ramped 15 → 44 → 54 → 73 → 76 March to July, and August finished at 52 — a far gentler fall-off than feared. For 2027: bid aggressively April through July, ease off into fall — the curve proves it.
  • The charge rate holds around 72%. Google's filtering plus our disputes keep roughly 1 in 4 leads free; four disputes won outright. Keep contesting anything out of scope.
  • The service area has a spine. Akron (26), Medina (17), Solon (17), Brunswick (16), Canton (14) anchor the map — the roadmap for the next service-area pages and review pushes.
  • Repairs are a standing stream. 31 repair-flagged leads across the season — they hold up better than full builds off-season and can keep LSA producing through the slow months.
Pipeline · from the CRM

From lead to signed jobSales pipeline · 713 opportunities · Feb 20 – Sep 25 · updated from GoHighLevel

Closed won — revenue
$1,657,804
70 jobs · avg ticket $23,683 — six more wins since Sep 18, worth $185,860
Opportunities YTD
713
every lead that entered the CRM
Active pipeline
154
35 at appointment or later · 28 in negotiation worth $548,270
Win rate (decided)
24%
70 won vs 219 lost · unqualified excluded
Priced estimates
197
$4.39M quoted in the CRM · 32% of priced estimates close
Return on ad spend — attributed only · live (updates as spend & revenue data is filled in)
Ad-attributed ROAS
—
LSA + Meta credited wins ÷ ad spend
Net after ad spend
—
attributed won revenue − all ad spend
Spend per attributed win
—
ad spend ÷ 7 credited jobs
Wins with no source
$822,712
38 jobs excluded from ROAS — 50% of all won revenue
ROAS counts ONLY revenue from wins attributed to Google LSA or Meta ($154,000 · 5 jobs · Meta: Morino $50,200 + Lisa Jones $10,900, the latter matched to her Meta form fill by phone & email). It is a floor, and the floor is getting further from the ceiling: $760,932 of won revenue now has no source, 53% of the total, because the eight wins logged since Sep 11 all arrived unsourced. The 72-contact stamping list sent on Sep 3 is still open — Lisa Jones, Kirtz, Mockabee and Lavetta Smith all remain blank in the CRM. Working that list is what moves this number.
Beyond ads — SEO & organic attribution
SEO & organic — won
$487,180
18 jobs via website form, Google Search & site chat
SEO & organic — active
30
19 website-form · 8 Google Search · 3 site chat
All marketing — won
$676,396
25 jobs: ads $189,216 + organic $487,180
Organic/SEO here catches every search-flavored source tag — “Google Search”, “Google”, “Search” (typos included) — plus the website lead form, the site chat widget, and ChatGPT/AI referrals. All 12 organic wins so far came through the website form. Caveat: some form fills may be referrals or repeat customers, so treat the split as directional until historical sources are back-filled.

FunnelWhere opportunities sit

Pipeline stages — all sources
Counts today, on the restructured pipeline · 110 unqualified and 313 closed-lost tracked separately below

By sourceOutcomes by lead source

Every opportunity by source and outcome
Won and active carry the color; lost and unqualified recede · small segments are widened slightly so every count stays readable
Won Active Lost Unqualified
Closed-won revenue by source
Sums of the deal values recorded in the CRM · Google LSA shown at its audited $92,900, which the CRM source field still does not carry

Tracked vs actualThe attribution gap — and the audit that closed most of it

What the ad platforms billed for vs what the CRM can account for. On Sep 3 every platform lead was cross-referenced against the CRM person-by-person (phone, name, email) — so the gap is no longer a mystery number: every lead is now on a named list.
Where it started
26%
of LSA leads visible in the CRM by source tag alone (Meta: 65%)
What the audit found
$10,900
a hidden Meta win (Lisa Jones) — now credited — and LSA's $92,900 verified to the dollar
Fixable with a source stamp
72
contacts already in GHL: 54 LSA + 6 Meta blank + 12 mis-sourced — lists delivered Sep 3, still open
Truly missing from the CRM
116
98 charged LSA leads + 18 Meta form fills with no record — incl. Sept's first 3 form leads
Where every billed lead actually is — after the Sep 3 audit
Unique charged customers, repeat calls deduped · LSA all-time, Meta lead forms Jul 11 – Sep 2
In the CRM (matched)Not in the CRM — named list deliveredUnmatchable (no contact info in export)
“In the CRM” counts every person the audit matched, whether or not their source field is filled in yet — 72 of them just need the source stamped (lists sent Sep 3). The unmatchable slice is LSA message leads Google bills for without sharing a name or phone. The lasting fix stays the same: a GHL automation that stamps the source on every opportunity at intake.

Reading it honestlyPipeline notes

  • Meta has now closed four deals — Morino $50,200, Lisa Jones $10,900, Brenda Dey $16,236 and Greg Denk $18,980. $96,316 against $6,200 of Meta spend to date is a 15.5x return on that channel alone. The Meta Landing Page tag is the cleanest source in the CRM: 13 opportunities, 2 wins, zero losses, the rest still active. The channel is proven end to end.
  • The attribution gap is closing at intake — history is what's left. 351 opportunities still lack a source, including $407K of won revenue, but nearly every opportunity created since late August arrives tagged (Meta Ads, Meta Landing Page, Google Search, Repeat Customer — even one from ChatGPT). The Sep 3 audit turned the rest into named lists: 72 contacts just need a source stamp, and the biggest historical wins can be back-filled as Matt remembers them.
  • The pipeline got a September clean-up. Active opportunities went from 199 to 126 as stale entries were re-staged into Unverified / No Response and Closed Lost — a cleaner funnel, and the remaining 126 are real. 28 of them are at Appointment Scheduled, the healthiest that stage has looked all season.
  • The website form quietly closes. 91 opportunities, 12 wins, $343K — the site is a producer in its own right, separate from the ad platforms.
Sales Reps · from the CRM

Sales teamRep scoreboard · from the CRM, thru Sep 25 · updated with each export

Every opportunity in GHL carries an assigned rep. These KPIs refresh with each monthly export — win rate counts decided deals only (won vs lost; unqualified excluded), and "at appointment+" means Appointment Scheduled through Negotiation today.
Jerry Emich
Appointments ran — 2026
294
~10/wk since February · 14 more already booked ahead
Closed won
$1,212,750
50 jobs in the CRM · avg ticket $24,255
Close rate on appointments
14%
42 closed of 294 ran
Avg ticket
$22,749
median 16 days lead-to-close · 19% win rate
September
28
new Sept opportunities
Matt Vargo
Appointments ran — 2026
142
~5/wk since February
Closed won
$445,054
20 jobs in the CRM · avg ticket $22,253
Close rate on appointments
~15%
22 closed of 142 ran — a touch high, since some closes were 2025 appointments
Win rate
22%
16 won vs 58 lost — now ahead of Jerry's 19%
September
5 wins
$112,346 from 27 Sept opportunities — his best month of the year
Team — 2026 to date
Appointments ran
436
~15/wk across both reps · 2027 target is 24/wk
Closed from appointments
$1,657,804
70 jobs in the CRM · incl. $156,626 carried over from 2025 appointments
Close rate
16.1%
70 of 436 — about 1 signed job per 6 appointments
Revenue per appointment
$3,802
what one appointment on the calendar is worth
The scoreboard uses the reps' calendars as the source of truth for appointments — the CRM undercounts them (stages only show where a lead sits today). The $156,626 carryover stays in 2026 revenue (it was collected this year) but its appointments belong to 2025's KPIs — that's why Matt's calendar total exceeds his 2026-appointment production.

Side by sideRep KPIs

KPIJerry EmichMatt VargoKristen RogersUnassigned
Appointments ran 2026 (calendar)294142——
Future appointments booked14———
Closed 2026 (calendar)42 · $944,90522 · $453,760——
Opportunities (CRM)33013594154
Closed won (CRM)502000
Won revenue (CRM)$1,212,750$445,054$0$0
Win rate (CRM, decided)19%22%——
Median lead-to-close16 days51 days——
Active opportunities59382227
At appointment or later282832
New opps in September28271726
Sept wins1 · $17,4655 · $112,34600
Kristen's queue is mostly intake: 52 of her 80 opportunities sit in Unqualified / Unverified — first-touch screening, not sales (her earlier wins were reassigned to the closing rep). The 145 unassigned opportunities include 17 created in September — every unassigned lead is a lead nobody owns, so route them at intake. Calendar vs CRM gaps (Matt 22 closes vs 11 in the CRM) are the same story as the ad audits: log every appointment and close in GHL.

Month by monthMonthly KPIs — company & per rep

Toggle between all of Hemma and each rep. Every cell is editable — prefilled from the CRM by lead-created month, so update with accurate calendar numbers as they're reconciled. Close % = won ÷ (won + lost); leads still in play don't count against anyone. Matt's rows caught up on Sep 18 (11 wins became 16) and now read true. Recent months still finish higher as their leads decide.
MonthLeadsWonLostClose %Won revenue
February—
March—
April—
May—
June—
July—
August—
September—
2026—————
MonthLeadsWonLostClose %Won revenue
February—
March—
April—
May—
June—
July—
August—
September—
2026—————
MonthLeadsWonLostClose %Won revenue
February—
March—
April—
May—
June—
July—
August—
September—
2026—————
Two patterns. First, both reps close at 20–29% in months under ~40 leads and drop toward 9–15% when a month loads past 50 — the 2027 plan puts ~50 appointments a month on each rep, right at that ceiling, which is why tighter qualification matters more than volume. Second, September is the best month of the year on every measure: 98 new opportunities, 39 already at appointment or later, and $129,811 closed from September leads alone. Company totals include intake and unassigned leads, so the company close rate reads lower than either rep's.

2027 paceAppointments per week — target 12 per rep

Jerry — this week
appointments booked this week
Matt — this week
appointments booked this week
Target
12/wk each
the 2027 plan: 12 appts × 2 reps × 40 weeks = 960
2026 pace
15/wk
436 appointments over ~29 weeks, both reps — target is 24/wk
Fill the weekly boxes on each review call — they save automatically. Current pace is roughly two-thirds of the 2027 target, which is exactly why the plan adds lead volume (paid + referrals + samples + shows) rather than assuming the current flow gets there.
2027 Goals

The target2027 season plan · 2 sales reps · every assumption below is editable and saves

Revenue goal
Matt's number
Appointments
960
/week × weeks
Revenue at these assumptions
—
—
Jobs closed
—
—
Appt → close rate
%
2026 actual: 16.1% — the follow-up lever
Average job value
$
2026 actual: $23,683 — the mix lever
Lead → appt rate
%
2026 range: 23–46%
Leads needed
—
—
The chain: leads → appointments (× lead→appt rate) → jobs (× close rate) → revenue (× avg ticket). Change any input and the whole year re-forecasts. If "revenue at these assumptions" is short of the goal, the goal is not yet modelled — the assumptions are. The two levers that move it most are close rate and average ticket: closing 1-in-4 instead of 1-in-6, and keeping rep appointments on builds rather than small repairs.

Where the leads come fromChannel plan — leads per week

Paid carries the plan, but referrals, organic, samples, yard signs, and shows all count toward the weekly number. Targets are editable — 2026 baselines shown for honesty.
Channel2026 baseline /wk2027 target /wkSeason totalNotes
Google LSA~9 peak—full season from Mar 1, wider area, higher bids
Meta Ads~8 peak—launch Mar 1 at 2–3× 2026 budget
Organic / website / GBP~4—site closed $198K in 2026 — SEO + service-area pages
Referrals & repeat~2—referral program on every completed job
Samples · yard signs · shows~2—H&G + Medina shows, sample drops, signs on every jobsite
Angi · Home Depot · other~2—keep what already converts
Total~24 peak———
Paid leads (LSA + Meta)
—
—
Peak CPL (May)
$
cheapest month — demand at 1.69×
Fall CPL (Oct)
$
thin demand, same auction
Scale premium
%
what 2–3× volume adds in a fixed market
Blended CPL
—
weighted by where the leads actually land
Season ad budget
—
—
Projected return
—
revenue at assumptions ÷ ad budget
2026 proof that non-paid works: website form $198K won · referrals/shows/samples/retail $241K won · plus most of the $397K unattributed likely belongs here. The channel targets are goals to build toward through the season, not week-one expectations.

Side by sideWhat 2027 looks like at each level

The calculator above models one scenario at a time. This is the comparison, fixed: what three full-time reps realistically produce, and what $7.5M actually requires. Every column uses the same chain — leads → appointments → jobs → revenue — and the same seasonal CPL curve, so the columns are directly comparable. The binding constraint in each is marked.
 2026 actual2027 realistic
3 full-time reps
2027 at $7.5M
2026 is the full year including a projected Q4. Appointments in each 2027 column are whichever is lower: what the reps can run, or what the leads support — the smaller number is what actually happens, and it is flagged in the table. Ad budget uses the seasonal CPL curve with a scale premium, because pushing more volume through a market this size raises the price of every lead. One note on the 2026 column: appointments come from the reps’ calendars while leads are counted in the CRM, so a lead-to-appointment rate for 2026 would be comparing two different books — it is left blank rather than fabricated. 2026 leads are 376 paid (251 LSA charged + 125 Meta) plus 337 from every other source.

Weighted to the season2027 month by month

The annual plan above, spread across the calendar using five years of real search demand in Ohio — not divided by twelve. Every figure recalculates from the assumptions above. Leads, appointments and ad spend follow the demand curve. Jobs and revenue are shifted forward by the close lag, because a May lead becomes June money.
Close lag
mo
2026 median: 16 days Jerry · 51 days Matt
Peak month
—
—
Apr–Jul share of leads
—
four months carry most of the year
Dec–Feb share of leads
—
three months, barely a month's worth
MonthDemand indexShareLeadsApptsCPLAd spendJobsRevenue
Share is that month's slice of the year's demand. Ad spend is each month’s leads at that month’s CPL, not a flat rate — leads get cheaper as demand rises, so May buys at $32 and December at $71. That is why the blended CPL lands near the middle even though the range is more than 2×. Spend follows leads because LSA and Meta only bill when demand shows up — but the money has to be live before the curve moves, so February funds March. Revenue lands in the month set by the close lag above. One caveat worth naming: this is revenue signed, not installed — the CRM books Closed Won at signature. Winter signings are real (a February contract for an April build), but the install calendar is a separate constraint, and the cash timing follows the build, not the signature.
2027 revenue target by month
Seasonally weighted, shifted by the close lag · this is the shape to hold the year against

CheckpointsQuarterly goals

The numbers to check in on. A flat quarterly target would put 25% of the year in Q1 — the demand curve says Q1 is worth about a sixth of the leads, and Q2 nearly two-fifths. Missing a flat target in April means nothing; missing this one means something.
QuarterShare of leadsLeadsApptsAd spendJobsRevenueCumulative rev.
Quarterly revenue is shifted by the close lag, which is why Q3 nearly matches Q2 even though Q2 generates far more leads — summer's pipeline pays out in the fall. Q4 is the quarter to judge the fall plan on.

In-seasonPace tracker · targets follow the season curve, not a flat line

Through end of
pick the last closed month
Leads to date
target —
Appointments to date
target —
Revenue to date
$
target —
Targets are the cumulative seasonal plan through the month selected — so being "behind" in March means behind on March's share, not on a twelfth of the year. Green = at or ahead; amber = behind. Each link of the chain is tracked separately so the call shows exactly which one is leaking.
Subcontractors

Trade partnersSubcontractor directory

Deck trades only — every specialty here is something a Hemma job actually needs. Painting, powerwashing and renovation contractors are filed under Staining & Finishing, since that is the work we would hire them for. Click a chip to filter, every cell is editable and saves automatically, and the paste box below imports a whole list from a spreadsheet.
Subs on file
—
rows with a company name
Specialties covered
—
distinct trades in the directory
Insurance attention
—
expired or expiring within 30 days
Why this lives here
Crew capacity is the ceiling on how many jobs the 2027 plan can deliver. Bench depth per trade is a growth metric, not just a phone list — and seven deck trades still have nobody in them.

DirectoryAll subcontractors

SpecialtyCompanyContactPhoneEmailCoverage areaInsurance exp.Rate / notes
Staining & FinishingBlake Williams Handyman ServiceBlake Williams(330) 800-7512Wadsworth + surroundingTOP PICK. Flyer leads with Deck Work: build & repairs, staining, sealing. Wadsworth is ~12 miles from Seville — closest sub on the list. Offers references and photos on request.
Staining & FinishingRob Cook Painting & RemodelingRob Cook(216) 952-2450Solon · all of NE OhioSays fully insured — request COI. Had immediate availability the week of Sep 17 and offered deck photos. Best same-week option.
Staining & FinishingWilliams Home InnovationsNathan(330) 590-2931 cell · (330) 576-3047 officeSummit / Stark · whipros.comFamily-owned since 1976, four generations, licensed / bonded / insured. Decks, fencing and outdoor living are core trades. Asked for our volume and coverage areas.
Staining & FinishingWALLS Painting and Powerwashing LLCRich Walls(330) 554-0680Akron area (330)20 years, locally owned, free estimates, interior and exterior. Powerwash-then-stain is the same workflow a deck needs — ask for a per-square-foot deck rate.
Staining & FinishingCofta RenovationsJustin Cofta(216) 333-2098justincofta95@gmail.comServing Northeast OhioPainting, powerwashing and demolition — the powerwashing covers deck prep and the demo covers old deck tear-out.
Staining & FinishingN & N Paint N More LLCNathan(214) 809-2805stevie.nnpaintnmore@gmail.comMassillon · Stark CountyGood fit for the Canton corridor. IG @nandnpaintnmorellc. Confirm whether Nathan or Stevie is the contact of record.
Framing / CarpentryClassic Carpentry(440) 864-4003Cleveland west / Lorain (440)Carpentry specialist — the rarest skill set in the batch. Qualify for deck framing and structure, not finish work.
Framing / CarpentryROKA Renovation and RepairsDillon Shelly(234) 350-3865Akron / Canton (234)Card lists decking, masonry and siding alongside general trades. Worth qualifying for deck repairs and structural punch lists.
Landscaping & CleanupC&M Landscaping LLC(440) 781-3864Cleveland east / Lorain (440)Site restoration and cleanup after a build, which is where a good deck quietly loses its finish.
Concrete & Footers
Railing & Aluminum
Deck Lighting / Electrical
Pergola / Covers
Demolition / Tear-out
Excavation & Grading
Masonry & Pavers
Nine deck-applicable contractors from the September contractor post, each with a fit assessment in the notes column. Out-of-region contacts and anyone who never stated a trade were left out rather than filed as clutter. The seven empty rows are the deck trades with no bench at all yet: concrete and footers, railing, deck lighting, pergolas and covers, demolition, excavation, and masonry. Enter insurance expiry as a date (for example 3/15/2027) and the cell turns amber when it is inside 30 days or already past.

Bulk addPaste from a spreadsheet

Copy rows out of Excel or Google Sheets and paste them below, then click Import. Columns in order: Specialty, Company, Contact, Phone, Email, Coverage area, Insurance exp., Rate / notes. Tabs or commas both work, and short rows are fine — missing columns are left blank.
Call Notes

Weekly callAgenda · week of Aug 17

Uncheck the boxes at the start of each call — checks and notes save in this browser on this device.
  • Review this week's numbers (This Month tab) — leads, charged rate, spend pace.
  • Disputes: any junk leads to dispute? Any “in review” leads to follow up? (Window is limited.)
  • Update estimates booked, deals closed, and revenue in the month's funnel table.
  • Reviews: new Google reviews this week? Automation firing on completed jobs?
  • Budget & creative: any changes to Meta budget or LSA job types / bidding?
  • Review last week's action items below.

Follow-upsAction items

ItemOwnerDueStatus

DiscussionNotes & decisions

HistoryWeekly log

One row per call — the dashboard's running record. The week's headline numbers and the one thing that mattered.
Week ofLSA leadsMeta leadsSpendHighlight / decision
Aug 17