Rolling 7 days, live from HubSpot.
Which channel brought each paying customer in. One row per human: linked accounts count once, credited to the first channel that reached them. Spend decisions read from this table.
| Channel | Customers | MRR | New (30d) | Cost/mo | ROI |
|---|---|---|---|---|---|
| Organic Inbound | 180 | $16,970 | 186 | n/a | N/A |
| Paid Ads | 34 | $3,286 | 0 | $1,500 | 119% |
| Cold Email | 35 | $3,115 | 23 | $1,000 | 212% |
| Cold Call | 15 | $1,285 | 28 | $4,100 | -69% |
| User Generated | 4 | $326 | 1 | n/a | N/A |
| LinkedIn Automation | 0 | $0 | 0 | $100 | -100% |
| Referral | 0 | $0 | 0 | n/a | N/A |
| Total | 268 | $24,982 | 238 | $6,700 | 273% |
Contact counts by source channel, through signup to paid. Signup to Paid shows how well each channel's leads close once they enter the product; Churn is the share of ever-paying customers that have left.
| Channel | Contacts | Signed Up | Signup % | In Trial | Paying | Contact→Paid | Signup→Paid | Churned | Churn % |
|---|---|---|---|---|---|---|---|---|---|
| Organic Inbound | 1,182 | 1071 | 90.6% | 689 | 176 | 14.9% | 16.4% | 61 | 25.7% |
| Cold Email | 707 | 110 | 15.6% | 36 | 36 | 5.1% | 32.7% | 29 | 44.6% |
| Paid Ads | 337 | 174 | 51.6% | 117 | 35 | 10.4% | 20.1% | 15 | 30% |
| Cold Call | 522 | 33 | 6.3% | 9 | 16 | 3.1% | 48.5% | 3 | 15.8% |
| User Generated | 83 | 16 | 19.3% | 9 | 5 | 6% | 31.3% | 0 | 0% |
| Referral | 1 | 0 | 0% | 0 | 0 | 0% | - | 0 | - |
| Total | 2,832 | 1404 | 860 | 268 | 108 |
How customers were closed once acquired. 2+ calls or 1+ meeting counts as a sales-led close. This view measures the sales motion, not channel spend, so ROI does not apply here.
| Closing Channel | Customers | MRR | Avg Touches | Originated From |
|---|---|---|---|---|
| Cold Call | 256 | $23,814 | 9.3 | Organic 167 Email 36 Ads 33 Call 16 UGC 4 |
| Organic Inbound | 9 | $871 | 0.8 | Organic 9 |
| Paid Ads | 2 | $198 | 0.5 | Ads 2 |
| User Generated | 1 | $99 | - | UGC 1 |
| Cold Email | 0 | $0 | - | - |
| LinkedIn Automation | 0 | $0 | - | - |
| Referral | 0 | $0 | - | - |
| Total | 268 | $24,982 | 9 |
Instantly campaign performance joined to verified paying customers. A customer is credited to a campaign only when the campaign stamp or a live Instantly lead match confirms it; everything unverifiable stays in the last row rather than being guessed.
| Campaign | Contacted | Replies | Interested | Paying Customers | MRR |
|---|---|---|---|---|---|
| Universal - ALL Generic Paused | 331,594 | 906 | 208 | 19 | $1,691 |
| 006 - Remodelers (generic) Legacy | n/a | n/a | n/a | 9 | $851 |
| B - Agent-Specific Positioning (Estimating / Costing / PM) Active | 21,646 | 79 | 19 | 3 | $217 |
| Remodeler Generic V2 Ended | 17,187 | 82 | 18 | 1 | $99 |
| 004 Catch-All V2 Legacy | n/a | n/a | n/a | 1 | $99 |
| Remodelers V2 Ended | 36,675 | 79 | 14 | 0 | - |
| A - General Positioning (AI Teammate) Active | 25,263 | 66 | 7 | 0 | - |
| V3 - Builders Paused | 7,447 | 11 | 4 | 0 | - |
| V3 - Painters Ended | 6,030 | 18 | 3 | 0 | - |
| V3 - Roofers & Concreters Ended | 3,839 | 7 | 1 | 0 | - |
| Hardware Campaign Ended | 3,270 | 13 | 4 | 0 | - |
| V3 - Electrical Ended | 2,578 | 2 | 1 | 0 | - |
| TechStack Integration Ended | 814 | 5 | 0 | 0 | - |
| Other cold email (no campaign signal on record) | n/a | n/a | n/a | 2 | $158 |
| Total cold email | 456,343 | 1268 | 279 | 35 | $3,115 |
New contacts whose creation source did not supply a dialable phone. These get no call task until a number lands, so this table shows which pipes need tightening. 32 of the last 30 days' 243 new contacts arrived phoneless (8 in the last 7 days).
| Creation Source | Last 7 Days | Last 30 Days | Also Missing Name (30d) |
|---|---|---|---|
| Sammy Database Sync (App) | 5 | 24 | 12 |
| BCC_TO_CRM | 0 | 2 | 2 |
| Cold Email | Outbound Sync | 2 | 2 | 2 |
| EXTENSION | 0 | 1 | 0 |
| CONVERSATIONS | 0 | 1 | 0 |
| Aircall : AI-powered calling and SMS | 0 | 1 | 0 |
| MEETINGS | 1 | 1 | 0 |
| Total | 8 | 32 | 16 |
Rows are where customers came from, columns are how they were closed. Read a row to see how much of a channel's pipeline the sales team converts versus self-serve.
| Originated → Closed by | Cold Call | Paid Ads | Organic Inbound | User Generated | Total |
|---|---|---|---|---|---|
| Cold Call | 15 | 0 | 0 | 0 | 15 |
| Cold Email | 35 | 0 | 0 | 0 | 35 |
| Paid Ads | 32 | 2 | 0 | 0 | 34 |
| Organic Inbound | 170 | 0 | 9 | 1 | 180 |
| User Generated | 4 | 0 | 0 | 0 | 4 |
| Total | 256 | 2 | 9 | 1 | 268 |
original_source_channel set yet. The hourly classifier will pick them up on its next run.
Acquisition reads person_original_channel (person level, set by the governed classifier) with original_source_channel as fallback. MRR uses sammy_pricing_plan minus the $10 promo discount where sammy_promo_code is set.
ROI = (MRR minus monthly cost) / cost, charged to the acquiring channel. Paid ads cost is an estimate pending actual Meta spend numbers; cold call cost covers the whole sales team, which also closes deals sourced by other channels, so treat its ROI as conservative.
Closing Channel = where the deal was actually closed. Rule: 2+ calls or 1+ meeting on a paid customer means sales-led close (cold_call); otherwise the original lead source wins.
Avg Touches = average calls + meetings per paid customer in that bucket.
Funnel counts are contact-level by source channel (person-level linking makes the acquisition table differ by a customer or so). In Trial is a current snapshot, not everyone who ever trialed, because the app overwrites trial status on conversion or expiry. Churn % = churned / (paying + churned).
Originated From = of the customers closed here, where they originally entered HubSpot (Email = cold email, Organic = inbound form, UGC = manual/user-generated).
Cold email by campaign: denominators from Instantly analytics; paying customers matched by campaign stamp, the Clay-written reply campaign field, or live lead lookup (primary and secondary emails). Legacy rows are pre-Instantly campaigns recovered from reply data; their send volumes are not available. Customers acquired before Instantly or whose leads were removed cannot be re-matched and stay in the "Other" row; campaign stamping at contact creation (sammy-dashboard webhook update) grows verified coverage over time.
Source: HubSpot, cached 5 min. Force refresh.