Veraa. Client Performance Dashboard

Hemma Decks — Marketing Performance

Google LSA + Meta Ads + Google PPC · Data through Oct 2, 2026 · September final incl. the Sep 30 Google statement · attribution re-matched Oct 2 · August LSA statement still pending
This Month
—
 
Paid-ad appointments this month — leads from LSA, Meta and Google PPC that reached a booked appointment.
Ad spend
—
 
Cost per lead
—
 
Billable leads
—
 
Cost per appointment
—
 

This monthOctober 2026 · through Oct 2

October has just opened. One LSA lead on the 1st, not charged. September closed as the biggest month of the year — 113 billable leads (29 LSA charged of 43, plus 83 Meta forms and 1 Meta call) on $5,293.31 of Meta spend, and 29 paid-ad appointments against August's 17. 19 of September's leads have already signed, worth $415,177 — $132,896 of it traceable to ads. Three things carry into October: Fall 2026 Web is beating Summer 2026 on cost per lead ($58.14 against $64.78), the seasonal index says October runs about 19% below September and keeps falling to a December floor, and the Oct 2 attribution re-match found 109 LSA leads sitting in the CRM with no LSA source tag — worth $168,780 in closed jobs that the dashboard had been crediting to nothing. Expect fewer leads and a higher price per lead; the work that fills the calendar now is repairs, staining, and the quoted pipeline already in the CRM.

What we recommendRight now

  • 1 · Run one Meta campaign, not two. Summer 2026 and Fall 2026 Web are live against the same audience and splitting the learning. Fall Web is winning on cost per lead — $58.14 vs $64.78. Turn Summer off and give Fall Web the full budget.
  • 2 · Work the quoted pipeline before buying more leads. $481,625 sits in 25 opportunities at Negotiation, and 61 live opportunities are at appointment or later. October demand is falling; that money is already in the building.
  • 3 · Send the Google Ads campaign report. PPC has produced four appointments, but the asset report can't give cost or lead counts — assets double-count clicks. Without the campaign view, PPC can't be judged against the $53 LSA and $64 Meta benchmarks.
  • 4 · Close August. September's Google statement is in (LSA $2,116.65 · PPC $1,199.93). August LSA spend is still the $811.48 partial through 8/17 — one more statement finalises the season number. And send the Google Ads campaign report: PPC spend is known now, PPC leads are not.
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.

Money — liveOctober funnel & ROI

October opens here. LSA shows one lead on Oct 1, not charged. Meta and PPC fill in with the first exports of the month — every cell is editable and the headline above follows.
SourceLeadsAd spendCPLEst. bookedCost / apptDealsLead → jobRevenueROAS
Google LSA — — — —
Meta Ads forms + calls + — — — —
Google PPC search — — — —
October total ——— ———— ——
Enter leads and spend per channel as the exports land. Estimates booked drives the paid-appointment number at the top of this tab.
Working detailCall notes & follow-ups · agenda, action items, weekly log

Weekly callAgenda · week of Sep 28

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
Sep 28
Season & History
—
 
Billable leads this season — March 14 to today, every paid channel.
Season ad spend
—
 
Blended cost per lead
—
 
LSA charge rate
—
 
Best month
—
 

LSA qualityGoogle LSA — the season so far · Mar 14 – Sep 30 · all months final

Total LSA leads
357
245 calls · 112 messages
Charged (billable)
257
72% of all leads · incl. 1 still in review
Free of charge
100
93 filtered by Google + 7 disputes won (credited)
LSA appointments
51
from the CRM cross-reference · 7 signed, $168,780

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 ROAS
—
sum of the Revenue won column ÷ all ad spend
Reading this table
The headline numbers at the top of this tab are the totals of this table. Leads and spend load from the platform exports; appointments load from the CRM cross-reference; every cell is editable and the totals follow. August LSA spend is still a partial, so the season total carries a + until that statement lands.
MonthLSA chargedLSA spendMeta leadsMeta spendPPC leadsPPC spendAppts bookedRevenue wonMonth CPLROAS
March (from 3/14)——
April——
May——
June——
July——
August——
September——
October (to date)——
Season 2026——————————
Month CPL = all spend ÷ all billable leads. August LSA spend is the Aug 17 partial (+). September carries $1,199.93 of PPC spend with no PPC lead count yet, so its CPL reads high until the Google Ads campaign report lands — about $66 without it. Values save in this browser on this device.

TrendThe season's shape

LSA leads per month since launch
March 2026 – September 2026 · all months final
Charged Not charged / credited
Where leads come from — all time
Top cities across all 357 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
September LSA vs the demand curve
—
expected from the index · actual
Why month-over-month misleads
Aug → Sep reads −24% for Hemma and −22% for the market, but a normal Aug → Sep is only −7%. The rest is August's +20% unwinding. Judge each month against the curve, not the month before.
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
Hemma vs the curve — charged LSA leads each month against what the demand index predicts
MonthDemand indexExpected LSA chargedActualvs expected
Expected = the season's average leads per index point × that month's index, so it moves with the LSA charged column in the Season money table above. March is the launch half-month and October is in progress; both are shown but kept out of the average. A month above 0 beat the season's own run rate for that level of demand; below 0 trailed it.
The market itself — Ohio search demand, 2026 vs a normal year
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. The September 2026 search-demand figure is Google Trends data through Sep 20.

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)0.87−22%29
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 September's $63 toward $70–80 by December at the same $150/day. Budget for the CPL, not for fewer leads.

What it meansWhat 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. Against the curve, September landed where the season's own run rate says it should — see the table above. The −24% month-over-month number is real but it measures August's bump, not September's weakness. 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, then 52 in August and 43 in September — a gentler fall-off than the demand curve predicts. 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; seven disputes won outright. Keep contesting anything out of scope.
  • The service area has a spine. Akron (32), Medina (22), Solon (19), Canton (18), Brunswick (18) 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.
Working detailMonth-by-month archive · every month since launch, in full

ArchivePick a month

September 2026

Closed monthSeptember 2026 · final figures

September closed ahead of August, not behind it: 29 charged LSA leads plus 84 Meta leads is 113 billable leads against August's 78, and 29 paid-ad appointments against August's 17 — the best paid month of the year on both counts. 19 of the leads created in September have already signed, worth $415,177 — 5 of them, $132,896, trace to ads. (That is what September's leads turned into, not what was signed during September — the CRM does not hold a usable close date.) LSA volume is down month over month, and that is the season rather than the account: Ohio deck search demand fell over the same stretch, and the seasonal index puts September at 0.87 against August's 0.94. What got worse is price, not count — Meta's cost per lead moved from $44.36 in August to $63.01 in September because budget doubled into thinner demand, and LSA came in at $73 per charged lead against $54 in July. That is the number to decide on, not the lead count.

Month in four numbersSeptember at a glance

Paid-ad appointments
29
LSA 9 · Meta 16 · Google PPC 4 — up from 17 in August
Leads created in Sept → signed
$415,177
19 jobs so far, whenever they closed · $132,896 of it from 5 ad-attributed leads (LSA 3 · Meta 2)
Meta cost per lead
$63.01
up from $44.36 in August — budget doubled into thinner demand
Ad-attributed wins, all year
$254,196
10 jobs — LSA 7 ($168,780) · Meta 3 ($85,416)

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 / apptDealsLead → jobRevenueROAS
Google LSA — — — —
Meta Ads forms + calls + — — — —
Google PPC search — — — —
September total ——— ———— ——
Spend is from the Sep 30 Google statement (LSA 32 leads billed, $2,116.65 · Search 65 clicks, $1,199.93) plus Meta's Sep 1 – Oct 2 export. The one blank is PPC leads — the campaign report is still needed for that — so PPC cost per lead stays empty even though its spend is known. LSA's statement is gross of the 3 credited leads; the credits land on the next one. Values save automatically.

Platform detailSeptember · final

Google LSA
Leads
43
28 charged + 1 in review · 11 filtered · 3 credited
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
$2,116.65
32 leads billed · $66.15 per billed lead · $73 per charged lead
LSA leads by week
Meta Ads — consolidating to one campaign
CampaignStatusLeadsCost per lead
Hemma | Leads | Summer 2026active48$64.78
Hemma | Leads | Fall 2026 Webactive20$58.14
Hemma | Leads | creative test | 2026inactive13$55.23
Hemma | Leads | Landing Page | 2026inactive2$151.59
Meta — September final—83$63.77
Two campaigns ran against the same audience all month, and it cost us. Summer 2026 and Fall 2026 Web split one auction between them, which is why September's blended cost per lead landed at $63.77 when Summer alone had run near $50 through the summer. Fall Web finished the month cheaper ($58.14 against $64.78) — it should carry October on its own. The Creative Test and Landing Page campaigns are both off; the Landing Page test never got past 2 leads at $151.59 and should stay off. Judge the single survivor on cost per appointment, not cost per lead.
August 2026

Month summaryAugust 2026 · final · LSA statement pending

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 / apptDealsLead → jobRevenueROAS
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 / apptDealsLead → jobRevenueROAS
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 / apptDealsLead → jobRevenueROAS
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 / apptDealsLead → jobRevenueROAS
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 / apptDealsLead → jobRevenueROAS
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 / apptDealsLead → jobRevenueROAS
Google LSA————
March total—————————
LSA only — Meta launched July 1. Leads and spend stay in sync with the Season tab automatically.
Pipeline & Team
—
 
Closed-won revenue, 2026 — every signed job in the CRM.
Jobs closed
—
 
Average job value
—
 
Win rate
—
 
In negotiation now
—
 

From lead to signed jobSales pipeline · 776 opportunities · Feb 20 – Oct 1 · updated from GoHighLevel

Opportunities YTD
776
every lead that entered the CRM
Active pipeline
269
everything not closed or unqualified · 61 at appointment or later · 25 in negotiation worth $481,625
Priced estimates
297
$5.02M quoted in the CRM · 33% 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 ÷ 10 credited jobs
Wins with no source
$665,932
33 jobs excluded from ROAS — 38% of all won revenue
ROAS counts ONLY revenue from wins credited to a paid channel — $254,196 across 10 jobs: Google LSA $168,780 (7 jobs) and Meta $85,416 (3). LSA jumped from $92,900 on Oct 2, when we matched the 191 phone numbers in the LSA inbox against every opportunity in the CRM: 109 LSA leads are in there and not one carries an LSA source tag. Those matches alone account for 7 won jobs, $11,900 in open negotiation and 35 quoted-and-lost estimates worth $274,500. Mark Mazey — $63,000, the biggest LSA win — came from a lead Google never charged for. $665,932 of won revenue still has no source at all; the stamping list sent Oct 2 is what moves that number, and stamping it is a 20-minute job in GoHighLevel.
Beyond ads — SEO & organic attribution
SEO & organic — won
$561,100
22 jobs via website form, Google Search & site chat
SEO & organic — active
39
34 website-form & site chat · 5 Google Search
All marketing — won
$815,296
32 jobs: ads $254,196 + organic $561,100
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. 20 of the 22 organic wins 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 321 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 $168,780, 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. Every platform lead has been cross-referenced against the CRM person-by-person (phone, name, email) — first on Sep 3, re-run Oct 2 against all 776 opportunities — so the gap is no longer a mystery number: every lead is on a named list.
Where it started
26%
of LSA leads visible in the CRM by source tag alone (Meta: 65%)
What the Oct 2 re-run found
$168,780
LSA's real won revenue — up from $92,900, all of it hiding in untagged opportunities
Fixable with a source stamp
109
LSA leads already in GHL with no LSA tag — 45 of them reached an appointment · list delivered Oct 2
Truly missing from the CRM
100
82 LSA leads with a phone and no record + 18 Meta form fills that never became opportunities
Where every billed lead actually is — after the Oct 2 re-match
Unique leads, repeat calls deduped · LSA all-time (phone leads), 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 — all 109 LSA matches still need the source stamped (list sent Oct 2). 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

  • LSA is the best-performing paid channel, not Meta. Stamped properly, LSA has 7 wins worth $168,780 against Meta's 3 worth $85,416 (Morino $50,200, Brenda Dey $16,236, Greg Denk $18,980 — Lisa Jones' $10,900 is still in negotiation, not won). Meta Landing Page remains the cleanest tag in the CRM: 16 opportunities, 2 wins, zero qualified losses. Both channels work; only one of them was being measured.
  • Intake tagging is still the leak, and it is bigger than it looks. 443 opportunities carry no source at all, including 40 wins worth $834,712 — and only 59% of the opportunities created in September and October arrived tagged. Stamping the 109-contact LSA list fixes the history; a GoHighLevel automation that writes the source at intake is the only thing that stops the gap reopening. Until it exists, every ROAS number on this page is a floor.
  • 61 live opportunities are at appointment or later. 25 at Appointment Scheduled, 11 at Pending Estimate, 25 in negotiation worth $481,625. That negotiation block is the Q4 number to work: at the 25% win rate it is roughly $120K of signable revenue already in the building, before a single new lead.
  • The website form quietly closes. 144 opportunities, 22 wins, $554,816 — the site is a producer in its own right, separate from the ad platforms, and it costs nothing per lead.
Working detailSales reps · scoreboard, monthly KPIs, pace

Sales teamRep scoreboard · from the CRM, thru Oct 1 · 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,276,370
54 jobs in the CRM · avg ticket $23,636
Close rate on appointments
14%
42 calendar closes of 294 ran · the CRM shows 54 wins — the gap is appointments never logged
Win rate
26%
54 won vs 155 lost · 28 at appointment or later today
September
9 wins
$217,021 from 50 September opportunities
Matt Vargo
Appointments ran — 2026
142
~5/wk since February
Closed won
$467,354
22 jobs in the CRM · avg ticket $21,243
Close rate on appointments
~15%
22 calendar closes of 142 ran — a touch high, since some closes were 2025 appointments
Win rate
33%
22 won vs 45 lost — ahead of Jerry's 26%
September
10 wins
$198,156 from 43 September 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,743,724
76 jobs in the CRM · incl. $156,626 carried over from 2025 appointments
Close rate
17.4%
76 of 436 — about 1 signed job per 6 appointments
Revenue per appointment
$4,003
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)346142115173
Closed won (CRM)542200
Won revenue (CRM)$1,276,370$467,354$0$0
Win rate (CRM, decided)26%33%——
Active opportunities70427681
At appointment or later282292
New opps in September50434739
Sept-created leads now won9 · $217,02110 · $198,15600
Kristen's queue is intake: 57 of her 115 opportunities sit in Unqualified / Unverified — first-touch screening, not sales (her wins are reassigned to the closing rep). The 173 unassigned opportunities include 39 created in September and 6 already in October — every unassigned lead is a lead nobody owns, so route them at intake. One thing the CRM cannot tell us is when a job closed: 50 of Jerry's wins carry the same Closed Won date, Sep 15, from the pipeline clean-up, so lead-to-close time and jobs-closed-per-month have to come from the calendar and job log, not from here.

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. 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: 179 new opportunities, 19 already signed worth $415,177 — more signed revenue out of one month's leads than any other month has produced (closed whenever — the CRM has no usable close date). 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: 24 a week across the team × 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.
Working detailSubcontractors · trade partners and bench depth

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

SpecialtyCompanyContactPhoneEmailAreaIns. 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.
2027 Plan
—
 
Revenue at the current assumptions — change any input below and this moves.
Appointments
—
 
Jobs
—
 
Leads needed
—
 
Ad budget
—
 

The target2027 season plan

Two ways to run this. Forecast takes your appointment capacity and tells you the revenue it produces. Solve for a goal takes a revenue number and tells you the appointments, leads, reps and budget it would take — at the close rate and appointment rate you set below. Everything saves.
Revenue goal
Matt's number
Appointments
960
/week × weeks
Sales reps needed
—
at appts per rep per week
Revenue at these assumptions
—
—
Jobs closed
—
—
Appt → close rate
%
2026 actual: 17.4% — the follow-up lever
Average job value
$
2026 actual: $22,944 — 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. The 2026 column is what each channel actually ran: September's weekly rate (the season high) and, for LSA, the best single week — platform exports for the paid channels, CRM opportunities for the rest.
Channel2026 actual /wk2027 target /wkSeason totalNotes
Google LSA12 avg · 17 best wk—full season from Mar 1, wider area, higher bids
Meta Ads20 in Sep—launch Mar 1 at 1.5× September's budget — Sep already ran 20/wk
Google PPCnew in Sep—judge on the campaign report first; scale only if cost per appointment beats LSA
Organic / website / GBP7 in Sep · ~5 avg—site closed $519K in 2026 — SEO + service-area pages
Referrals & repeat<1 tagged—referral program on every completed job
Samples · yard signs · shows~1 · 11 in show wk—H&G + Medina shows, sample drops, signs on every jobsite
Angi · Home Depot · other3 in Sep—keep what already converts
Total~42 in Sep———
Paid leads (LSA + Meta + PPC)
—
—
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 & chat $519,600 won · referrals, shows, samples and retail $262,496 won · plus a good share of the $665,932 still 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 409 paid (257 LSA charged + 152 Meta) plus 367 from every other source — 776 in all.

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
months from lead to signed job · not readable from the CRM — set from the job log
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 · starts January 2027 · 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.