Mean 0.772 · 18/40 perfect tests · $1.76 total · each card: the question → the correct answer (gold) → this model's actual answer
Definitions • DS2+ deals: deals in stages DS2, DS3, DS4, DS5 • Non-compliant why-buys: why_buys blank, <15 characters, or placeholder (except LONG(n)) • Missing DS1: t_ds1 null • Regressed: any t_dsN > t_dsN+1 Metrics Overall DS2+ deals: 89 Non-compliant why-buys: 72 (80.9%) By owner • Bryce Harmon: 15/18 (83.3%) • Dana Mercer: 7/9 (77.8%) • Alex Franklin: 47/59 (79.7%) • Cole Ingram: 2/2 (100.0%) • Farid Osman: 1/1 (100.0%) Missing DS1 timestamps: 0 Regressed deals: 0 Process fixes 1. Enforce a CRM validation rule: require DS1 timestamp before advancing to DS2+ stages. 2. Enforce minimum why_buys length (≥15 chars) for DS2+ stage entry, disallow placeholders. 3. Enforce stage-timestamp ordering: block entry if new stage date precedes prior stage date.
Deals resolved: 156 Deals with no matching owner_id: none Owners flagged as archived/deactivated (from deals): none Total open-pipeline amount by owner (all amounts USD): • Bryce Harmon (36 deals): sum of deal amounts = 1 054 144.00 (e.g. 24 000 + 19 656 + 13 500 + 7 000 + 2 520 + 240 000 + 99 000 + 72 000 + 70 000 + 63 600 + 45 000 + … = 1 054 144) • Alex Franklin (33 deals): sum = 624 310.00 (14 850 + 13 770 + 11 200 + 9 000 + 6 360 + 5 400 + 3 240 + 2 484 + 1 920 + 1 080 + … = 624 310) • Dana Mercer (23 deals): sum = 341 195.00 (11 250 + 10 500 + 9 000 + 9 000 + 5 400 + 4 800 + 4 600 + 1 920 + 15 000 + 4 200 + 18 900 + 27 000 + 43 875 + 20 000 + 60 000 + 8 100 + 16 250 + 3 150 + 5 000 + 2 100 + 23 400 + 5 400 + 7 350 + 25 000 = 341 195) • Cole Ingram (21 deals): sum = 288 161.43 (2 760 + 1 330 + 7 225.40 + 3 360 + 5 616 + 2 700 + 7 781.20 + 6 947.50 + 40 000 + 12 168 + 2 480.40 + 11 116 + 11 193 + 1 875 + 31 750 + 32 175 + 4 779.88 + 3 334.80 + 58 529.25 + 4 140 + 18 900 = 288 161.43) • Farid Osman (7 deals): 1 249 + 1 + 1 + 1 + 2 880 + 1 + 1 = 4 134.00 • Elena Sinclair (1 deal): 2 100 = 2 100.00
Here’s what I found, using only the data provided:
(a) Orphans
• Definition: gong_calls rows whose hs_deal_id does not appear in deals_open.
• Count: 20 of 105 gong rows
• Sample aliases: Deal-8FA85D, Deal-8FC3F9, Deal-3B7945, Deal-42B265, Deal-9CCC42
(e.g. 60251290957 → Deal-8FA85D; 60251649055 → Deal-8FC3F9; 60251639682 → Deal-3B7945; …)
(b) Duplicate conversation keys
• Definition: calls_90d > distinct_conversation_keys
• Count: 14 rows
• Sample aliases:
– Deal-03BA69 (calls_90d = 5, distinct = 0)
– Deal-523604 (4 > 0)
– Deal-8FDCD2 (3 > 0)
– Deal-E2D34B (11 > 0)
– Deal-5CA5AF (5 > 0)
(c) Call coverage for open DS3+ deals
• Open deals at DS3 or later: 85
(counted all deals_open rows where stage ∈ {DS3, DS4, DS5})
• Of those, deals with ≥1 call in the last 90 days (i.e. appear in gong_calls): 79
• Share = 79 / 85 ≈ 0.929 → 92.9%
• Sample aliases with calls: Deal-25F752 (3 calls), Deal-C6FE92 (11), Deal-BA3DDC (4)
All arithmetic was done by matching hs_deal_id across the two CSVs and comparing calls_90d versus distinct_conversation_keys.
```sql -- Using PRODUCTION.PLG.COMPANY_COHORT_SUMMARY: contains first-month metrics per self-serve company SELECT COMPANY_ID, M1_USERS AS unique_givers, M1_GIVES AS recognition_count, M1_REDEMPTIONS AS successful_redemption_count FROM PRODUCTION.PLG.COMPANY_COHORT_SUMMARY; ```
CRM Audit Summary 1. Missing Deals Data • deals.csv not provided; owner, stage, amount, close date and why-buys completeness cannot be assessed or linked to pipeline amounts. 2. Completeness by Entity and Field • Companies (N=34) – industry: 34/34 = 100% – employee_count: 25/34 = 74% – hq_country: 29/34 = 85% • Contacts (N=52) – email: 52/52 = 100% – title: 42/52 = 81% – persona: 37/52 = 71% 3. Duplicate-Domain Company Clusters Cluster 1: domain=acme-corp.com • C-0A092931 (Technology, 500, US) • C-0A092932 (tech, 510, USA) ← survivor: C-0A092932 (more recent emp_count) Cluster 2: domain=globex.io • C-0A092933 (SaaS, 200, US) ← survivor: C-0A092933 (more specific industry) • C-0A092934 (Technology, 200, US) 4. Invalid Emails • CT-0010: “user0@” • CT-0080: “user0@” • CT-0081: “user1@” • CT-0192: “user2@” 5. Email ↔ Domain Mismatches • CT-0010 (user0@ vs 66d1fc.com) • CT-0011 (user1@other-domain.com vs 66d1fc.com) • CT-0080 (user0@ vs 92d97d.com) • CT-0081 (user1@ vs 92d97d.com) • CT-0192 (user2@ vs 425e2a.com) 6. Auto-Fill Missing Company Fields from ZoomInfo Enrichment (employee_count, where CRM blank & enrichment available) • C-EC3025 → 400 • C-96039F → 400 • C-44EA29 → 400 • C-D04904 → 400 • C-B23205 → 400 • C-60C75F → 400 • C-7BBDFA → 400 • C-50D386 → 400 (93C8BF.com not in enrichment → no fill) No hq_country blanks could be filled (all enrichment hq_country blank or domain absent). 7. CRM vs Enrichment Disagreements (recommend using enrichment as canonical source) • industry – C-66D1FC: CRM=tech vs ZI=Computer Software – C-EC3025: CRM=Technology vs ZI=Computer Software – C-44EA29: CRM=tech vs ZI=Computer Software – C-92D97D: CRM=Technology vs ZI=Computer Software – C-77A95A: CRM=Technology vs ZI=Computer Software – C-AA8DDA: CRM=Technology vs ZI=Computer Software – C-425E2A: CRM=Tech vs ZI=Computer Software • hq_country (US/USA vs United States) – C-66D1FC, C-950043, C-EC3025, C-96039F, C-77A95A, C-B23205, C-E51FB7, C-D0662E, C-425E2A, C-2D7423 8. Proposed Fixes 1. Merge duplicate-domain records, retaining survivor IDs above. 2. Normalize industry names (map “tech”/“Tech ”→“Technology”; “health care”→“Healthcare”). 3. Normalize hq_country (“US”/“USA” → “United States”). 4. Fill employee_count for 8 companies per enrichment. 5. Manually source hq_country for the 5 remaining blanks. 6. Correct invalid emails (add missing domains). 7. Update mismatched email domains to match company domain. 8. Populate missing contact titles (via data source or manual). 9. Populate missing contact personas (via data source or manual). 10. Standardize company_alias for merged clusters. No pipeline-amount ranking can be produced: deals data is missing.
Here are the classifications for all 81 closed-lost deals in the last six months: 1. Category counts • pricing: 4 • competitor: 25 • no decision (MIA + doing nothing + Lost DM): 33 • timing: 16 • product gap (ICP + feature request): 3 • champion left: 0 • other: 0 (Total = 4 + 25 + 33 + 16 + 3 = 81) 2. Side split • Bonusly (pricing + product gap): 4 + 3 = 7 • Buyer (competitor + no decision + timing): 25 + 33 + 16 = 74 • Unknown: 0 3. Disagreements (tag vs free-text reason): 4 deals • Deal-5DB9B0 (tag “Does not fit ICP” vs reason “Spam.”) • Deal-ED9AE7 (tag “Lost DM” vs reason “Timing, budget, authority.”) • Deal-3618CC (tag “Lost DM” vs reason “Wanted Surveys.”) • Deal-8E27DA (tag “Feature Request” vs reason “moved forward with just a swag provider…”) 4. Two patterns worth acting on a) Competitor losses are the single largest bucket (25/81≈31%)—with many citing pre-built integrations or preferred partnerships (e.g. ADP PEO partner). Focus on building/deepening key integrations and highlighting partnership benefits to counter these objections. b) Timing delays account for 16/81≈20% and no-decision (MIA + doing nothing + Lost DM) for 33/81≈41%. That’s over half the losses. Sharpen qualification on prospect timelines and decision-maker engagement up front, and institute a tighter re-engagement cadence.
{
"tier_counts": {
"ACTION": 8,
"RISKY": 36,
"LOCK": 4,
"REVIVE": 40,
"BUILD": 22,
"WATCH": 1
},
"tier_examples": {
"ACTION": [
"Deal-25F752",
"Deal-D348E1",
"Deal-944310"
],
"RISKY": [
"Deal-E53952",
"Deal-5408B0",
"Deal-9AAE5F"
],
"LOCK": [
"Deal-C26D20",
"Deal-403845",
"Deal-A5E80A"
],
"REVIVE": [
"Deal-6787C2",
"Deal-2D1F1B",
"Deal-F436DA"
],
"BUILD": [
"Deal-D73B89",
"Deal-012CB1",
"Deal-CA7DC0"
],
"WATCH": [
"Deal-3EED2C"
]
},
"risky_deals": [
"Deal-E53952",
"Deal-5408B0",
"Deal-9AAE5F",
"Deal-547B2B",
"Deal-B7EBD1",
"Deal-A2B47C",
"Deal-2465CE",
"Deal-C61CF7",
"Deal-62D607",
"Deal-584EE5",
"Deal-C6D97A",
"Deal-7B3B0F",
"Deal-F9A08A",
"Deal-0660B4",
"Deal-FD9F4E",
"Deal-BA571A",
"Deal-523604",
"Deal-FC22A3",
"Deal-01E193",
"Deal-C1FA6D",
"Deal-7BBDFA",
"Deal-93C8BF",
"Deal-1CCE5C",
"Deal-927338",
"Deal-60C2C2",
"Deal-4A13AD",
"Deal-8AD4A5",
"Deal-15D24F",
"Deal-9D0060",
"Deal-690476",
"Deal-635B8E",
"Deal-ED725A",
"Deal-55164C",
"Deal-819506",
"Deal-3BA5EA",
"Deal-5FDCE4"
],
"lock_violations": 0,
"pipeline_shape": "Lock and Action account for 10.8%, BUILD 19.8%, REVIVE 36.0%, WATCH 0.9%, and RISKY 32.4% of the pipeline."
}
```json
[
{
"transcript_id": "TX-001",
"deal_alias": "Deal-CFE7F4",
"why_buys": [
"The big win for us would be automating anniversary and birthday awards — our HR team of three cannot keep up with it manually.",
"Right now we track everything in a spreadsheet, and people slip through the cracks."
],
"pain_points": [
"HR team of three cannot keep up with anniversary and birthday awards manually",
"People slip through the cracks due to manual spreadsheet tracking"
],
"stakeholders": [
"VP People",
"HR Admin"
],
"budget_signal": "$40k earmarked for engagement tools this fiscal year",
"timeline_signal": "Live before open enrollment in November",
"competitor_mentioned": "Achievers",
"next_step": "Security review on September 12",
"objections": [
"Need SSO and audit logs for IT sign off"
],
"confidence": null
},
{
"transcript_id": "TX-002",
"deal_alias": "Deal-70BB30",
"why_buys": [
"We want to tie recognition to retention for our hourly workforce — regretted turnover there is over 30%."
],
"pain_points": [
"Regretted turnover over 30% among hourly workforce"
],
"stakeholders": [
"Head of Total Rewards",
"CFO"
],
"budget_signal": "$25k pilot budget approved for this quarter",
"timeline_signal": "Decision by end of September",
"competitor_mentioned": null,
"next_step": "Send the pilot agreement and route it to legal this week",
"objections": [
"Integration with Workday has to be rock solid"
],
"confidence": null
},
{
"transcript_id": "TX-003",
"deal_alias": "Deal-530B50",
"why_buys": [
"We need to make recognition visible across our 12 retail locations."
],
"pain_points": [
"Store managers have zero budget autonomy for on-the-spot recognition"
],
"stakeholders": [
"People Ops Manager",
"CEO"
],
"budget_signal": null,
"timeline_signal": "No rush until Q1",
"competitor_mentioned": "Bucketlist",
"next_step": "Schedule a call with the CEO (prospect will send two times)",
"objections": [],
"confidence": null
},
{
"transcript_id": "TX-004",
"deal_alias": "Deal-180D02",
"why_buys": [
"We want to consolidate three separate recognition tools into one."
],
"pain_points": [
"Paying for three tools that don’t integrate with our HRIS"
],
"stakeholders": [
"VP People",
"IT Security Lead"
],
"budget_signal": "Under $15k annually can be approved without board review",
"timeline_signal": "Procurement cycle runs six to eight weeks minimum",
"competitor_mentioned": null,
"next_step": null,
"objections": [
"Security review took three months for our last vendor"
],
"confidence": null
},
{
"transcript_id": "TX-005",
"deal_alias": "Deal-F8767A",
"why_buys": [
"Automate service milestones",
"Give us analytics on recognition equity across departments"
],
"pain_points": [
"Night-shift teams feel invisible; their engagement scores run 20 points lower"
],
"stakeholders": [
"HR Director",
"People Ops Coordinator"
],
"budget_signal": "$12k approved under our engagement line",
"timeline_signal": "Running before our January all-hands",
"competitor_mentioned": "Nectar",
"next_step": "Present to exec team on October 2",
"objections": [
"Exec team is skeptical after a failed rollout two years ago"
],
"confidence": null
},
{
"transcript_id": "TX-006",
"deal_alias": "Deal-EE195F",
"why_buys": [
"Cut the admin time on service awards"
],
"pain_points": [
"Spend five hours a month ordering and shipping plaques"
],
"stakeholders": [
"HR Manager"
],
"budget_signal": null,
"timeline_signal": "Q1 start (fiscal year resets in February)",
"competitor_mentioned": "Doing it internally",
"next_step": "Send the one-page overview for COO forwarding this week",
"objections": [
"COO usually prefers building things in-house"
],
"confidence": null
}
]
```
Three deals are in final “signature pending” status: 1. Deal-B7EBD1 ( $9 000 ) • CRM: DS5 / COMMIT with a 2026-09-10 close date • Why close: fully negotiated, in commit stage • What’s left: customer to sign and return the order form 2. Deal-547B2B ( $11 200 ) • Slack: redlines came back clean; signing page issued; VP People said they’ll sign tomorrow • What’s left: VP to sign and send back the executed document 3. Deal-403845 ( $9 000 ) • Slack: order form is with their finance team • What’s left: finance to review, approve, and return the signed form
Summary of real product gaps: 1. Deal-EC3025 (amount not provided) Quote: “We need SCIM user provisioning — our security team will not approve any tool that requires manual account management.” Classification: Real gap 2. Deal-D0D6B5 (amount not provided) Quote: “Our payroll runs on ADP Workforce Now and I don’t see ADP anywhere in your integration list — that’s a dealbreaker for us.” Classification: Real gap
Bryce Harmon (12 stale deals, total stale amount \$602,843)
Deal-2D1F1B | DS1 | \$240,000 | 86 days
(2026-06-16 → 2026-09-05 = 86)
Deal-66D1FC | DS1 | \$99,000 | 16 days
(2026-08-20 → 2026-09-05 = 16)
Deal-950043 | DS1 | \$70,000 | 19 days
(2026-08-17 → 2026-09-05 = 19)
Deal-B23205 | DS1 | \$45,000 | 16 days
(2026-08-20 → 2026-09-05 = 16)
Deal-7BBDFA | DS3 | \$37,440 | 46 days
(2026-07-21 → 2026-09-05 = 46)
Deal-332637 | DS2 | \$36,000 | 9 days
(2026-08-27 → 2026-09-05 = 9)
Deal-1BEEBF | DS1 | \$31,500 | 19 days
(2026-08-17 → 2026-09-05 = 19)
Deal-40522D | DS3 | \$21,000 | 19 days
(2026-08-17 → 2026-09-05 = 19)
Deal-F0EBBB | DS3 | \$11,400 | 24 days
(2026-08-12 → 2026-09-05 = 24)
Deal-E25A09 | DS1 | \$6,000 | 9 days
(2026-08-27 → 2026-09-05 = 9)
Deal-C9C286 | DS2 | \$5,502 | 9 days
(2026-08-27 → 2026-09-05 = 9)
Deal-012CB1 | DS1 | \$1 | 23 days
(2026-08-13 → 2026-09-05 = 23)
Dana Mercer (4 stale deals, total stale amount \$28,020)
Deal-B7EBD1 | DS5 | \$9,000 | 16 days
(2026-08-20 → 2026-09-05 = 16)
Deal-3974EB | DS4 | \$9,000 | 8 days
(2026-08-28 → 2026-09-05 = 8)
Deal-7FA0C3? | DS2 | \$8,100 | 15 days
(Deal-F40F04)
(2026-08-21 → 2026-09-05 = 15)
Deal-0660B4 | DS4 | \$1,920 | 26 days
(2026-08-10 → 2026-09-05 = 26)
Alex Franklin (4 stale deals, total stale amount \$10,700)
Deal-C6D97A | DS4 | \$3,240 | 8 days
(2026-08-28 → 2026-09-05 = 8)
Deal-278DEC | DS3 | \$2,700 | 8 days
(2026-08-28 → 2026-09-05 = 8)
Deal-635B8E | DS3 | \$2,600 | 18 days
(2026-08-18 → 2026-09-05 = 18)
Deal-4A13AD | DS3 | \$2,160 | 26 days
(2026-08-10 → 2026-09-05 = 26)
Cole Ingram (11 stale deals, total stale amount \$166,467.35)
Deal-D04904 | DS2 | \$58,529.25 | 11 days
(2026-08-25 → 2026-09-05 = 11)
Deal-B25F40 | DS3 | \$40,000 | 8 days
(2026-08-28 → 2026-09-05 = 8)
Deal-CFE1E8 | DS3 | \$18,000 | 11 days
(2026-08-25 → 2026-09-05 = 11)
Deal-CD47A6 | DS2 | \$12,168 | 11 days
(2026-08-25 → 2026-09-05 = 11)
Deal-FF809F | DS2 | \$7,781.20 | 11 days
(2026-08-25 → 2026-09-05 = 11)
Deal-AF932D | DS2 | \$7,225.40 | 11 days
(2026-08-25 → 2026-09-05 = 11)
Deal-A71728 | DS2 | \$6,947.50 | 11 days
(2026-08-25 → 2026-09-05 = 11)
Deal-8BC9F5 | DS2 | \$5,616 | 10 days
(2026-08-26 → 2026-09-05 = 10)
Deal-481E24 | DS3 | \$4,140 | 10 days
(2026-08-26 → 2026-09-05 = 10)
Deal-C7F9BF | DS2 | \$3,360 | 11 days
(2026-08-25 → 2026-09-05 = 11)
Deal-342E96 | DS2 | \$2,700 | 24 days
(2026-08-12 → 2026-09-05 = 24)
Elena Sinclair (1 stale deal – engagement data missing, amount \$2,100)
Deal-57FF13 | DS1 | \$2,100 | no engagement data available
Farid Osman: 0 stale deals
Hugo Lindqvist, Gavin Porter (archived): n/a
Per‐rep last-30 day activity, DS2 entries (08 Jun–05 Sep 2026), efficiency and ranks: Rep Emails Calls Meetings Total Acts DS2 Entries Acts/DS2 Bryce Harmon 149 0 40 189 3 63.00 Alex Franklin 80 21 8 109 6 18.17 Farid Osman 38 0 34 72 1 72.00 Cole Ingram 73 13 2 88 1 88.00 Dana Mercer 37 1 1 39 0 N/A Elena Sinclair 0 0 0 0 0 N/A Activity mix (as % of total activities): Bryce Harmon: emails 78.8% / calls 0% / meetings 21.2% Alex Franklin: emails 73.4% / calls 19.3% / meetings 7.3% Farid Osman: emails 52.8% / calls 0% / meetings 47.2% Cole Ingram: emails 83.0% / calls 14.8% / meetings 2.3% Dana Mercer: emails 94.9% / calls 2.6% / meetings 2.6% Elena Sinclair: N/A (no activity) Efficiency ranking (lowest acts/DS2 → most efficient): 1. Alex Franklin (18.17) 2. Bryce Harmon (63.00) 3. Farid Osman (72.00) 4. Cole Ingram (88.00) — Dana Mercer and Elena Sinclair have no DS2 entries (ratio N/A). Most efficient rep: Alex Franklin Highest‐volume rep: Bryce Harmon They differ.
QTD Scorecard for Alex Franklin as of 2026-09-05
1. Bookings vs. Quota
• Bookings QTD (closed-won 7/1–9/5):
– Deals: A1C3E5 $40 000; F2C7D8 $20 000; B7D2F4 $35 000; C9E1A6 $21 000; A8B4D6 $12 000; D4B8C2 $11 000; E6F3A9 $6 500; C5D9E2 $4 500
= $150 000
• Quota: $200 000 → Attainment 150 000 / 200 000 = 75.0%
2. New vs. Expansion Split
• New: A1C3E5 (40 000) + B7D2F4 (35 000) + C9E1A6 (21 000) + D4B8C2 (11 000) + E6F3A9 (6 500) = $113 500 (76%)
• Expansion: F2C7D8 (20 000) + A8B4D6 (12 000) + C5D9E2 (4 500) = $36 500 (24%)
3. Active Pipeline by Stage (open deals)
• DS1: $284 621
• DS2: $353 760
• DS3: $552 705
• DS4: $ 23 574
• DS5: $ 45 730
4. Rolling 90-day DS2→Won Rate
• Entered DS2 6/7–9/5: 35 deals (27 lost + 8 won) → 8 / 35 = 22.9%
5. Win / Loss Counts & Top Loss Reason (QTD)
• Wins: 8
• Losses: 27
• Top loss reason: “Lost – Timing (1 year or more)” (13 of 27 losses)
6. Activity Volume (last 30 days on QTD closed deals)
• Emails sent: 198
• Calls: 56
• Meetings: 36
• Notes logged: 46
Three Coaching Observations
1. Timing is the chief barrier – 48% of losses (13 / 27) cite “Timing”; identify opportunities earlier or align with customers’ budgeting cycles.
2. Strong top-of-funnel, weak late-stage velocity – VS large DS3 ($553 K) pipeline, DS4/5 are tiny ($23 K / $46 K); focus on moving DS3 deals into proposal and close.
3. Low DS2 conversion (23%) despite high touch (198 emails, 56 calls); experiment with tighter qualification or more persuasive value demos to improve win rates.
Flagged deals:
1. Deal-EC3025 (61032318100, C-FDD0C7)
• amount: data not provided
• stage: data not provided
• active contacts: 1 (CT-047C54: champion; CT-F2C1AE is former) → 1 < 2 ⇒ single-threaded
• personas present: champion
• personas missing: economic buyer, HR admin, IT security, finance
• most valuable persona to add: economic buyer
• on-file unengaged: CT-6827DB (Chief People Officer, economic buyer)
2. Deal-92D97D (59728118877, C-E23238)
• amount: data not provided
• stage: data not provided
• active contacts: 1 (CT-01F5B4: HR admin; CT-A902AE last engaged 2026-06-01 < 2026-07-15) → 1 < 2 ⇒ single-threaded
• personas present: HR admin
• personas missing: economic buyer, champion, IT security, finance
• most valuable persona to add: economic buyer
• on-file unengaged: none on file
3. Deal-50D386 (61055128146, C-EB10E4)
• amount: data not provided
• stage: data not provided
• active contacts: 2 (CT-AA41B2 champion, CT-B9C35B HR admin) → 2 < 3 ⇒ under-threaded
• personas present: champion, HR admin
• personas missing: economic buyer, IT security, finance
• most valuable persona to add: economic buyer
• on-file unengaged: CT-A1C4B3 (Chief People Officer, economic buyer)
4. Deal-D0D6B5 (60081655042, C-32918E)
• amount: data not provided
• stage: data not provided
• active contacts: 3 (all champions: CT-87CED4, CT-DE6D7C, CT-FD70B2) → 3 = 3 but all same persona ⇒ under-threaded
• personas present: champion
• personas missing: economic buyer, HR admin, IT security, finance
• most valuable persona to add: economic buyer
• on-file unengaged: CT-1FA4DB (Chief People Officer, economic buyer)
5. Deal-5BFE3B (51674270311, C-535D36)
• amount: data not provided
• stage: data not provided
• active contacts: 2 (CT-57123B, CT-5CE757; both champions) → 2 < 3 ⇒ under-threaded
• personas present: champion
• personas missing: economic buyer, HR admin, IT security, finance
• most valuable persona to add: economic buyer
• on-file unengaged: none on file
6. Deal-36C33F (63739413805, C-077A0E)
• amount: data not provided
• stage: data not provided
• active contacts: 1 (CT-4FE556: IT security; others are former) → 1 < 2 ⇒ single-threaded
• personas present: IT security
• personas missing: economic buyer, champion, HR admin, finance
• most valuable persona to add: economic buyer
• on-file unengaged: CT-1DB73E (Chief People Officer, economic buyer)
7. Deal-885F45 (60686135564, C-5E8EFB)
• amount: data not provided
• stage: data not provided
• active contacts: 2 (CT-51C81E econ buyer, CT-D9A0E8 champion) → 2 < 3 ⇒ under-threaded
• personas present: economic buyer, champion
• personas missing: HR admin, IT security, finance
• most valuable persona to add: IT security
• on-file unengaged: CT-B3F25D (IT Security Lead, IT security)
8. Deal-FCBE5B (62639586615, C-737030)
• amount: data not provided
• stage: data not provided
• active contacts: 1 (CT-4A5317: champion) → 1 < 2 ⇒ single-threaded
• personas present: champion
• personas missing: economic buyer, HR admin, IT security, finance
• most valuable persona to add: economic buyer
• on-file unengaged: none on file
9. Deal-5408B0 (60182332309, C-2AE3AA)
• amount: data not provided
• stage: data not provided
• active contacts: 2 (CT-D33AE4 champion, CT-8742FD HR admin) → 2 < 3 ⇒ under-threaded
• personas present: champion, HR admin
• personas missing: economic buyer, IT security, finance
• most valuable persona to add: economic buyer
• on-file unengaged: CT-07FA76 (Chief People Officer, economic buyer)
10. Deal-C6D97A (62121783047, C-5A8FC2)
• amount: data not provided
• stage: data not provided
• active contacts: 3 (CT-223DDC, CT-B03555, CT-4E8A2B; all champions) → 3 = 3 but all same persona ⇒ under-threaded
• personas present: champion
• personas missing: economic buyer, HR admin, IT security, finance
• most valuable persona to add: economic buyer
• on-file unengaged: none on file
11. Deal-F9A08A (49757401138, C-0D15DF)
• amount: data not provided
• stage: data not provided
• active contacts: 1 (CT-931B10: champion; CT-913581 last engaged 2026-06-20 < 2026-07-15) → 1 < 2 ⇒ single-threaded
• personas present: champion
• personas missing: economic buyer, HR admin, IT security, finance
• most valuable persona to add: economic buyer
• on-file unengaged: CT-697541 (Chief People Officer, economic buyer)
Lead-in themes (first five minutes) • “Quick one to kick off: a 400-person retailer we work with cut regretted turnover 18% in two quarters after automating milestone awards, and I wanted to walk you through exactly how they did it.” • “I put together a short agenda — security review first, then pricing.” • “You asked for straight pricing last time, so let’s start there.” Three most common objections and Alex’s replies • Budget locked until next fiscal year (4×): “Totally fair. Most teams fund this out of turnover savings — that retailer saved about $210k in avoided backfills, which is how their finance team signed off.” • Revisit next quarter/underwater (3×): “Makes sense. What if we scope a 90-day pilot with one department so you have internal data before next quarter’s planning?” • “We already do recognition with a spreadsheet and quarterly gift cards” (3×): “Spreadsheets work until they scale — the difference is automation: milestones fire without HR lifting a finger, and you get analytics on who is being recognized.” Concrete next-step agreed rate Agreed next step in 7 out of 10 calls → 7/10 = 70% Competitors raised by prospects • Awardco: “We’re also in late talks with Awardco — their rewards catalog looks bigger than yours.” • Kudos: “How are you different from Kudos? Our CEO used them at her last company.” Coaching notes 1. Rotate and personalize your opening—tailor the hook to the prospect’s industry or role to avoid sounding scripted. 2. Pre-frame common objections in your intro and lock in next steps immediately after handling objections to boost your agreement rate.
COMMIT total 11200 + 9000 + 9000 + 6360 + 5400 + 2520 + 1249 = 44 729 BEST_CASE total 38935 + 24000 + 19656 + 16250 + 11116 + 10800 + 10500 + 9890 + 9720 + 9000 + 7200 + 3840 + 3780 + 3600 + 3240 + 3150 + 3120 + 3060 + 2916 + 2760 + 2484 + 2100 + 1920 + 528 = 203 565 Weighted forecast 44 729 + 0.35 × 203 565 = 44 729 + 71 247.75 = 115 976.75 Deal counts inside quarter (2026-07-01 to 2026-09-30) COMMIT: 7 BEST_CASE: 24 PIPELINE: 23 Excluded deals (close date outside quarter) Count: 32 Total amount: 227 575 Top 5 BEST_CASE deals inside quarter 1. Deal-2D7423: 38 935 2. Deal-25F752: 24 000 3. Deal-E53952: 19 656 4. Deal-5EED42: 16 250 5. Deal-FA32A0: 11 116 ## Data quality Many deals have why_buys_chars=0, so there’s no documented rationale behind forecast_category assignments. Several deals are labeled COMMIT despite being in early stages (e.g. Deal-A5E80A at DS1), indicating inconsistent stage–category mapping. The amount field mixes integers and decimals (e.g. 2480.4), risking rounding or parsing errors. No deals appear with July close dates, suggesting the extract may be incomplete for the full quarter.
Cohort (all companies ≥25 months old; no exclusions): 1) Both signals (m1_users ≥ 5 AND m1_redemptions ≥ 1) • N = 115 • Retained at 24 months: 92/115 = 80.0% 2) Givers‐only (m1_users ≥ 5 AND m1_redemptions = 0) • N = 93 • Retained: 59/93 ≈ 63.4% 3) Redemption‐only (m1_users < 5 AND m1_redemptions ≥ 1) • N = 27 • Retained: 15/27 ≈ 55.6% 4) Neither signal (m1_users < 5 AND m1_redemptions = 0) • N = 206 • Retained: 78/206 ≈ 37.9% Excluded from denominator: none (every row met the ≥25-month age requirement and had a valid status). Single signal with the largest lift vs. “neither”: • Unique givers (m1_users ≥ 5) alone lifts retention by 63.4% − 37.9% = 25.5 percentage points, versus 17.7 pp for redemptions alone. What this does and does not prove: ✓ There’s a strong positive association between having many unique givers in month 1 and 24-month retention. ✗ It does not prove that driving givers causes retention—other factors (company size, product fit, sales motion) may drive both high early giving and long-term renewal.
Billing ARR (active subs) = Σ (mrr × 12) excluding cancelled (SUB-000E, SUB-000F) = 604 739.28 CRM ARR (all company_arr) = Σ hubspot_arr = 603 581.76 Variance (Billing − CRM) = 604 739.28 − 603 581.76 = 1 157.52 Decomposition of +1 157.52 into buckets (sums in USD; Billing − CRM): 1. Status mismatch (cancelled subs still in CRM) • C-0C8323BF: billing 0 − CRM 4 905.24 = −4 905.24 • C-0DC4FB8C: billing 0 − CRM 8 253.24 = −8 253.24 → Bucket total = −4 905.24 + (−8 253.24) = −13 158.48 2. Missing records (subscription without CRM; CRM without subscription) • C-21629AA4: billing 28 449.24 − CRM 0 = +28 449.24 • C-0D5BBE3A: billing 0 − CRM 16 497.24 = −16 497.24 → Bucket total = +28 449.24 + (−16 497.24) = +11 952.00 3. Other pricing differences • C-0F7269D7: 26 796.00 − 24 396.00 = +2 400.00 • C-0D66DF9E: 23 184.00 − 23 200.00 = −16.00 • C-14D70CE0: 18 180.00 − 18 200.00 = −20.00 → Bucket total = +2 400.00 − 16.00 − 20.00 = +2 364.00 4. Rounding • No accounts with |billing − CRM| ≤ 1.00 → Bucket total = 0.00 Check: −13 158.48 + 11 952.00 + 2 364.00 + 0.00 = +1 157.52 ✅ Mismatched accounts and owner data (“Owner” not in provided data; please assign) • Status mismatch – C-0C8323BF (cancelled in billing, live in CRM) – owner: TBD – C-0DC4FB8C (cancelled in billing, live in CRM) – owner: TBD • Missing records – C-21629AA4 (in billing, missing in CRM) – owner: TBD – C-0D5BBE3A (in CRM, no billing record) – owner: TBD • Other pricing diffs – C-0F7269D7 (+2 400) – owner: TBD – C-0D66DF9E (−16) – owner: TBD – C-14D70CE0 (−20) – owner: TBD Business-rule violations (term ≠ 12 months but cf_agreement_end_date blank): • SUB-0002, C-1794A52C (term=24, no cf_agreement_end_date) • SUB-0019, C-22170CA1 (term=36, no cf_agreement_end_date)
Here are the aggregated KVMs for 2026-08 vs 2026-07 (means across all 30 companies):
KVM July August Δ Absolute Δ Relative Direction
giving_rate 0.60230 0.60271 +0.00042 +0.07% ↑
redemptions_per_user 1.72998 1.73016 +0.00018 +0.01% ↑
one_to_one_engagement 0.44689 0.44718 +0.00029 +0.06% ↑
pulse_engagement 0.60059 0.50861 −0.09198 −15.32% ↓
Calculations shown: e.g. pulse_engagement Δ = 0.50861−0.60059 = −0.09198; relative = −0.09198/0.60059≈−15.32%.
The largest relative move is pulse check engagement (−15.32%), driven by the enterprise segment (enterprise fell from 0.54998 to 0.27428, a −50.20% drop).
Last completed month: August 2026 1. Redemption count 48 (Count of records with redeemed_at in 2026-08) 2. Total spend \$3 536.00 (Sum of amount_usd for 2026-08: 3536.0) 3. Unique redeemers 46 (Distinct user_key values among those 48 records) 4. Redemptions per redeemer 48 ÷ 46 = 1.04 5. Provider mix (percent of spend) • TangoCard: \$500 ÷ \$3 536 × 100 = 14.14% • Tremendous: \$1 145 ÷ \$3 536 × 100 = 32.38% • custom: \$1 057 ÷ \$3 536 × 100 = 29.89% • Snappy: \$834 ÷ \$3 536 × 100 = 23.59% (Shares sum to 100%) 6. Top 5 countries by redemption count 1. US – 31 2. CA – 7 3. GB – 2 4. SG – 2 5. AU – 2
Qualifying at‐risk accounts (health_score<60, churn_save_amt>0, renewal ≤120 days from 2026-09-05): 1. C-0F6C0F34: $49 707 – Executive Touch (champion_active=false) 2. C-0B827671: $25 365 – Usage Revival (usage_trend_3m=declining) 3. C-0B360C78: $35 748 – Commercial Concession (usage_trend_3m=growing & champion_active=true) 4. C-0B0F1BAB: $5 494 – Executive Touch (champion_active=false) 5. C-0CA21961: $16 829 – Commercial Concession (usage_trend_3m=flat & champion_active=true) 6. C-0E9C27D1: $41 235 – Commercial Concession (usage_trend_3m=flat & champion_active=true) 7. C-0CEF69FD: $32 621 – Executive Touch (champion_active=false) 8. C-0D3278C7: $17 602 – Usage Revival (usage_trend_3m=declining) Total at stake = 49 707+25 365+35 748+5 494+16 829+41 235+32 621+17 602 = $224 601 At‐risk but not eligible: - C-0BC71BDD: churn_save_eligible_amount=0 (fails R2) - C-0BA71F12: renewal_date=2027-04-11 (>120 days) (fails R3) - C-0F6694C3: churn_save_eligible_amount=0 (fails R2) - C-0BE96399: churn_save_eligible_amount=0 (fails R2) - C-0F876796: renewal_date=2027-02-06 (>120 days) (fails R3) - C-0FCCD2DF: churn_save_eligible_amount=0 (fails R2) - C-10A56B0F: churn_save_eligible_amount=0 (fails R2)
Seat coverage (C-0DDFC9A7): 150 seats ÷ 400 headcount = 37.5% coverage Usage health: • MAUs rose from 88 in Mar-2026 to 126 in Aug-2026 (+38 users, +43.2%). • Growth has been steady at +7–8 users/month; 126 active users fill 84% of licensed seats. Headroom: • 24 unused seats (150 – 126) • $9,000 ÷ 150 = $60/seat; 24 × $60 = $1,440 ARR potential Who replied: Maria S., People Operations Coordinator — not a purchasing decision-maker Right buyer: Dana R., VP People (last engaged 2026-05-18) Reply email (137 words): Subject: Intro to Dana R. for Bonusly Expansion Hi Maria, Thanks for the update—and glad to hear MAUs climbed from 88 in March to 126 in August for C-0DDFC9A7. With 84% seat utilization, there’s clear momentum to expand. You mentioned Dana R. oversees budget and seat increases—could you please introduce me? I’d love to share a brief proposal showing how adding seats could drive an extra $1,440 ARR in the next year. Appreciate your help connecting me with Dana, and looking forward to keeping the recognition program growing! Best, Cole Ingram
Complete Slack integration – connected on 2026-08-12 HRIS integration – not connected (blank) Allowance set – 2026-08-13 Admins added – 2 (field “admins_added”=2) First recognition – 2026-08-15 14:22 First redemption – not yet (blank “first_redemption_at”) Early engagement signals Active givers grew from 3 on 2026-08-11 to 15 on 2026-09-04: +12 givers, a 400% increase (12÷3=4). • Week 1 (8/11–8/17): 3→7 (+4) • Week 2 (8/18–8/24): 7→9 (+2) • Week 3 (8/25–8/31): 9→11 (+2) • Week 4 (9/1–9/4): 13→15 (+2) First recognition occurred 4 days post-signup (8/11→8/15). Two admins are active. Three things to cover on the call 1. Complete HRIS integration to sync employee data. 2. Walk through and execute the first redemption workflow. 3. Review the rising active-giver trend and outline next steps to sustain and deepen engagement.
90-Day Renewal Risk Brief (as of 2026-09-13)
Accounts renewing 2026-09-13 to 2026-12-12 (all within 90 days):
1. C-0B7D2C30
CSM: Dana Mercer
ARR: 65 901
Date used: 2026-09-15 (Chargebee; multi-year contracts make ChurnZero dates unreliable) ⧖ disagreement
Seat utilization: 274/476=57.6%
3-mo usage trend (Jun→Jul→Aug): 97→94→84 (–13.4%)
Risk: High – moderate adoption but 13.4% usage decline in 3 months.
2. C-0BCDB8C2
CSM: Cole Ingram
ARR: 54 427
Date used: 2026-09-18 (Chargebee; multi-year) ⧖ disagreement
Seat utilization: 232/424=54.7%
3-mo trend: 127→118→110 (–13.4%)
Risk: High – 13.4% usage drop and only mid-range adoption.
3. C-0D2AB865
CSM: Elena Sinclair
ARR: 38 022
Date used: 2026-09-22 (Chargebee; multi-year) ⧖ disagreement
Seat utilization: 250/407=61.5%
3-mo trend: 125→117→109 (–12.8%)
Risk: High – double-digit decline despite decent adoption.
4. C-0BBE3E60
CSM: Dana Mercer
ARR: 30 993
Date used: 2026-09-26 (Chargebee; multi-year) ⧖ disagreement
Seat utilization: 74/114=64.9%
3-mo trend: 39→35→33 (–15.4%)
Risk: High – strong decline in usage.
5. C-0F5D2323
CSM: Cole Ingram
ARR: 90 647
Date used: 2026-09-29 (Chargebee; multi-year) ⧖ disagreement
Seat utilization: 111/390=28.5%
3-mo trend: 20→21→18 (–10.0% net)
Risk: High – very low adoption and flat/declining usage.
6. C-0EC6999D
CSM: Elena Sinclair
ARR: 79 419
Date used: 2026-10-03 (ChurnZero; single-year)
Seat utilization: 31/112=27.7%
3-mo trend: 17→16→15 (–11.8%)
Risk: High – low adoption and 11.8% decline.
7. C-0B20DB64
CSM: Dana Mercer
ARR: 21 770
Date used: 2026-10-07 (ChurnZero; single-year)
Seat utilization: 214/378=56.6%
3-mo trend: 294→298→294 (+0%)
Risk: Medium – moderate adoption but no growth.
8. C-0BBC4E7A
CSM: Cole Ingram
ARR: 56 374
Date used: 2026-10-10 (ChurnZero; single-year)
Seat utilization: 228/337=67.6%
3-mo trend: 142→141→139 (–2.1%)
Risk: Low – healthy adoption and minimal decline.
9. C-0FD551AB
CSM: Elena Sinclair
ARR: 48 815
Date used: 2026-10-14 (ChurnZero; single-year)
Seat utilization: 210/376=55.9%
3-mo trend: 123→122→126 (+2.4%)
Risk: Medium – moderate adoption with slight growth.
10. C-0F9F8F13
CSM: Dana Mercer
ARR: 46 230
Date used: 2026-10-18 (ChurnZero; single-year)
Seat utilization: 199/352=56.5%
3-mo trend: 185→185→182 (–1.6%)
Risk: Medium – mid-range adoption and slight usage dip.
11. C-0BC34584
CSM: Cole Ingram
ARR: 16 740
Date used: 2026-10-22 (ChurnZero; single-year)
Seat utilization: 327/494=66.2%
3-mo trend: 104→104→106 (+1.9%)
Risk: Low – solid adoption and modest growth.
12. C-0B7A7546
CSM: Elena Sinclair
ARR: 35 062
Date used: 2026-10-25 (ChurnZero; single-year)
Seat utilization: 182/205=88.8%
3-mo trend: 64→65→63 (–1.6%)
Risk: Low – very high adoption and stable usage.
13. C-0B369871
CSM: Dana Mercer
ARR: 85 128
Date used: 2026-10-29 (ChurnZero; single-year)
Seat utilization: 317/422=75.1%
3-mo trend: 326→330→333 (+2.1%)
Risk: Low – high adoption and growth.
14. C-0B144C78
CSM: Cole Ingram
ARR: 30 899
Date used: 2026-11-02 (ChurnZero; single-year)
Seat utilization: 169/224=75.5%
3-mo trend: 101→101→106 (+5.0%)
Risk: Low – strong adoption and growth.
15. C-0FC4DBB8
CSM: Elena Sinclair
ARR: 94 732
Date used: 2026-11-05 (ChurnZero; single-year)
Seat utilization: 356/464=76.7%
3-mo trend: 189→191→193 (+2.1%)
Risk: Low – high adoption and growth.
16. C-0D5BBE3A
CSM: Dana Mercer
ARR: 39 740
Date used: 2026-11-09 (ChurnZero; single-year)
Seat utilization: 85/102=83.3%
3-mo trend: 88→90→91 (+3.4%)
Risk: Low – very high adoption and growth.
17. C-0FB9D5AF
CSM: Cole Ingram
ARR: 63 158
Date used: 2026-11-13 (ChurnZero; single-year)
Seat utilization: 144/199=72.4%
3-mo trend: 173→173→176 (+1.7%)
Risk: Low – strong adoption and growth.
18. C-0B344485
CSM: Elena Sinclair
ARR: 64 384
Date used: 2026-11-16 (ChurnZero; single-year)
Seat utilization: 224/287=78.1%
3-mo trend: 238→240→244 (+2.5%)
Risk: Low – high adoption and growth.
19. C-0CB2C1B4
CSM: Dana Mercer
ARR: 40 628
Date used: 2026-11-20 (ChurnZero; single-year)
Seat utilization: 386/473=81.7%
3-mo trend: 47→48→49 (+4.3%)
Risk: Low – very high adoption and growth.
20. C-22170CA1
CSM: Cole Ingram
ARR: 45 646
Date used: 2026-11-24 (ChurnZero; single-year)
Seat utilization: 251/294=85.3%
3-mo trend: 143→148→146 (+2.1%)
Risk: Low – very high adoption and stable growth.
Disagreements flagged on accounts 1–5 where ChurnZero dates differ from Chargebee and multi-year flag makes CZ dates unreliable.
Total ARR renewing: 1 048 715
ARR at risk (High + Medium):
High-risk ARR = 359 409
Medium-risk ARR = 95 045
Total at risk = 454 454
1. HRIS provisioning failures • Count: 12 (18% of tickets) • Distinct accounts: 3 (C-0B2213A9, C-0F6C0F34, C-0DDFC9A7) • ARR exposure: $114,000 • Sample tickets: IC-460059, IC-460062 • Recommendation: Implement retry logic and enhanced logging/alerts on the HRIS sync endpoint to ensure new-hire accounts are created reliably. 2. Gift-card redemption failures • Count: 17 (25%) • Distinct accounts: 7 (e.g. C-0CEF69FD, C-0B827671, C-14264ABD, …) • ARR exposure: $68,800 • Sample tickets: IC-460025, IC-460030 • Recommendation: Fix the checkout timeout bug and integrate a reliable email-delivery pipeline so gift-card codes arrive without error. 3. Billing and invoicing errors • Count: 12 (18%) • Distinct accounts: 1 (C-0E9C27D1) • ARR exposure: $52,000 • Sample tickets: IC-460071, IC-460069 • Recommendation: Correct seat-count and tier-pricing logic in the billing engine and add a pre-send invoice validation step. 4. Missing points posting • Count: 14 (21%) • Distinct accounts: 7 (e.g. C-0D3278C7, C-0BF20542, C-0D6CC8E3, …) • ARR exposure: $25,300 • Sample tickets: IC-460004, IC-460016 • Recommendation: Audit the recognition-to-points pipeline and add end-to-end monitoring to ensure credit events are queued and processed. 5. Slack integration breakdowns • Count: 12 (18%) • Distinct accounts: 4 (C-0B843542, C-10A56B0F, C-0BA71F12, C-8C2E8F00) • ARR exposure: $18,900 • Sample tickets: IC-460041, IC-460047 • Recommendation: Resolve token-persistence and slash-command endpoint issues in the Slack app and implement health checks to detect sync outages.
Top matches (by number of attribute matches out of 4): 1. C-11C31562 (case study) – matches 3/4 • size_band: Mid-Market • use_case: employee_recognition • region: NA-West 2. C-64171065 (case study) – matches 3/4 • industry: Technology • size_band: Mid-Market • use_case: employee_recognition 3. C-A13C193D (case study) – matches 3/4 • industry: Technology • size_band: Mid-Market • region: NA-West
Channel performance (Mar–Aug 2026) Paid channels ---------------------------------------------------------------------------------------------------------------- Channel Spend USD SQMs SQOs Cost/SQM (USD) Cost/SQO (USD) SQO rate Pipeline USD Pipeline/$ Notes paid_search 36 000 40 18 36 000 / 40 = 900 36 000 / 18 = 2 000 18 / 40 = 0.45 18×40 000 = 720 000 720 000 / 36 000 = 20 linkedin_ads 24 000 25 8 24 000 / 25 = 960 24 000 / 8 = 3 000 8 / 25 = 0.32 8×12 000 = 96 000 96 000 / 24 000 = 4 2 rows flagged: CT-000041, CT-000044 (SQO precedes SQM) paid_social 18 000 0 0 undefined undefined undefined 0 undefined webinars 9 000 12 5 9 000 / 12 = 750 9 000 / 5 = 1 800 5 / 12 ≈ 0.417 5×12 000 = 60 000 60 000 / 9 000 ≈ 6.67 Organic channels ---------------------------------------------------------------------------------------------------------------- Channel Volume (SQMs) SQOs SQO rate Pipeline USD organic_search 30 10 10 / 30 = 0.333 10×9 000 = 90 000 referral 15 6 6 / 15 = 0.400 6×8 000 = 48 000 Reallocation recommendation ---------------------------------------------------------------------------------------------------------------- Shift budget away from linkedin_ads (cost/SQO = 3 000 USD, pipeline/$ = 4) and paid_social (no SQMs) into paid_search (cost/SQO = 2 000 USD, pipeline/$ = 20) and webinars (cost/SQO = 1 800 USD). Confidence: moderate. Paid_search (n = 40 SQMs) & linkedin_ads (n = 25) are adequate; webinars (n = 12) is a smaller sample. Organic channels not funded by spend.
Battlecard: Rivally One-line positioning Points-based recognition platform suited for mid-market customers. [S02, S04] Pricing - $7 per user/month (annual billing), as of 2026-08-12 (newer source wins). [S17] - Prior listing: $5 per user/month (annual billing), as of 2026-01-20. [S03] Where they win - Engaging points-based recognition feed. [S02, S16] - Fast setup (<1 week) with Slack integration working out-of-the-box. [S04] - Strong multi-language support for distributed EU teams. [S12] - Responsive support (under 4 hours). [S22] - Microsoft Teams app v2 in public preview. [S19] Where we win - Deeper analytics capabilities vs. their basic reporting dashboards. [S07] - SCIM provisioning vs. their manual user management. [S10] - Bulk recognition editing vs. their missing admin console feature. [S24] - Analytics depth cited by an 800-seat prospect choosing us over them. [S25] Objections & responses - Objection: Rivally pitched EU data residency. [S05] Response: no sourcing available in provided data. - Objection: Rivally quoted $7 list with ~15% discount for 3-year term. [S18] Response: no sourcing available in provided data. - Rep opinions marked unverified: “UI is clunky.” [S09]; “aggressive discounting.” [S21] Recent changes - Hired ex-Workday VP EMEA to lead European expansion. [S11] - Opened Dublin office; EU data residency generally available. [S15] - Pricing updated to $7 per user/month. [S17] - Microsoft Teams app v2 launched in public preview. [S19] - Rivally Pulse add-on exited beta, now priced as an add-on. [S23] 12-month win/loss vs. Rivally (Sep 2025–Aug 2026) 13 wins vs 7 losses (source: deals_with_competitor.csv)
New Logo Nurture • Total sent: 1 386 • Open rate = 490 / 1 386 = 35.4% • Reply rate = 90 / 1 386 = 6.5% • Meeting rate = 27 / 1 386 = 1.95% • Weakest step: 3 (reply 4.2%) Expansion Nurture • Total sent: 875 • Open rate = 565 / 875 = 64.6% • Reply rate = 59 / 875 = 6.7% • Meeting rate = 12 / 875 = 1.37% • Weakest step: 3 (reply 4.4%) • Tracking error: step 2 opened 340 > sent 300 Cold Outbound – HR Leaders • Total sent: 1 785 • Open rate = 545 / 1 785 = 30.5% • Reply rate = 8 / 1 785 = 0.45% • Meeting rate = 0 / 1 785 = 0% • Weakest step: 3 (reply 0.17%) Cold Outbound – People Ops • Total sent: 1 163 • Open rate = 340 / 1 163 = 29.3% • Reply rate = 29 / 1 163 = 2.49% • Meeting rate = 6 / 1 163 = 0.52% • Weakest step: 3 (reply 1.59%) 1. Tracking errors – Expansion Nurture step 2: opened 340 > sent 300 2. Audience overlap – CT-000301 appears in Expansion Nurture and New Logo Nurture – CT-001217 appears in Cold Outbound – HR Leaders and Cold Outbound – People Ops 3. Failure mode for reply < 2% – Cold Outbound – HR Leaders replies 0.45%: messaging not resonating (poor targeting/persona fit) 4. One change per weak sequence • New Logo Nurture (step 3): add personalized subject lines + dynamic CTA to boost relevance • Expansion Nurture (step 3): fix tracking pixel implementation, then retest opens before content tweaks • Cold Outbound – HR Leaders: rebuild the list with verified HR leaders and refine value props to that persona • Cold Outbound – People Ops (step 3): A/B test send day/time and simplify ask to increase replies 5. Which to fix first Target Cold Outbound – HR Leaders first (reply 0.45%, no meetings) to stop wasted volume.
Weekly Marketing Goals Update for Q3-2026 (66/92 days elapsed) SQMs • QTD actual: 230 • Target: 300 • Δ: –70 • Pace: Ahead (required QTD = 300 × 66/92 = 215.2; 230 > 215.2) SQOs • QTD actual: 84 • Target: 120 • Δ: –36 • Pace: Behind (required QTD = 120 × 66/92 = 86.1; 84 < 86.1) DS2s • QTD actual: 40 • Target: 75 • Δ: –35 • Pace: Behind (required QTD = 75 × 66/92 = 53.8; 40 < 53.8) Closed-lost MIA rate • QTD actual: 5/25 = 20.0% • Target: 10.0% • Δ: +10.0 pp • Pace: Behind (20.0% > 10.0%) Same-quarter closes • QTD actual: 10 • Target: 20 • Δ: –10 • Pace: Behind (required QTD = 20 × 66/92 = 14.35; 10 < 14.35) Active pipeline • QTD actual: $3,000,000 • Target: $4,000,000 • Δ: –$1,000,000 • Pace: Ahead (required QTD = 4,000,000 × 66/92 = 2,869,565; 3,000,000 > 2,869,565) Weekly movement data was not provided, so unable to report what moved this week.
We forecast $115,977 for Q3 based on 100% of $44,729 commit and 35% of $203,565 best-case. 32 deals totaling $227,575, including one $13,770 commit, fall outside the quarter.
Hello, I wanted to follow up on the pricing recap I sent on August 5 after our July 28 demo of 150 seats. Do you have any questions or feedback on the proposal for Deal-0D2F7A? If you’re available, could we schedule a 15-minute call this week to review next steps? Let me know what works best. Best regards, Alex Franklin
This week Marketing delivered 46 SQMs against a target of 52 (46 / 52 ≈ 88.5%), with webinars contributing 18 of those leads (18 / 46 ≈ 39%). Cost per SQM on paid search held steady at $150, demonstrating efficient investment in demand-gen channels. The Sales team converted 14 SQOs and booked 9 DS2 meetings (9 / 14 ≈ 64%), creating $310 000 in new pipeline (≈ $22 143 per SQO) and closing 3 deals in the same quarter. These figures show healthy funnel progression and early-stage momentum. CS saved 2 renewals this week and achieved a Team NPS of 61, while carrying 3 open red-flag accounts into next week. These metrics reinforce continued focus on customer success and proactive risk management. PLG added 412 new signups with a 31% activation rate (412 × 31% ≈ 128 activated users) and saw 38 companies hit the aha moment of 10 recognition gives (38 / 412 ≈ 9.2%). This underscores strong self-serve growth and meaningful product engagement.
Partner Digest: 2026-08-24 to 2026-09-04 Active partners: - Apex Rewards Co: 2 deals sourced (Deal-DDAAF2 + Deal-2CF33E) totaling \$180,000 + \$95,000 = \$275,000 - HRCloud Partners: 1 deal sourced (Deal-F1CDA5) totaling \$140,000 - CultureBridge: 2 deals sourced (Deal-096E1D + Deal-067213) totaling \$60,000 + \$75,000 = \$135,000 - WorkWell Group: 0 deals sourced totaling \$0 Quiet partners: - Recogniq: no activity this period - KudosWave: no activity this period - PeopleFirst Advisors: no activity this period - TotalPerk: no activity this period
Q1. Is customer data encrypted at rest? If so, how? Yes. All customer data is encrypted at rest using AES-256. [P1] Q2. Is data encrypted in transit? Yes. Data in transit is encrypted with TLS 1.2 or higher. [P1] Q3. Do you hold a SOC 2 report, and can we obtain a copy? Yes. We maintain a SOC 2 Type II report, renewed annually, and it is available to prospects under NDA. [P2] Q4. How long is customer data retained after contract termination? Customer data is retained for the duration of the contract plus 90 days, after which it is deleted from production systems. [P3] Q5. Where is your subprocessor list published and how are changes notified? A current list of subprocessors is maintained at trust.bonusly.com. Customers receive 30 days’ notice before any new subprocessor is added. [P4] Q6. Do you support SAML single sign-on? Yes. SAML 2.0 single sign-on (and SCIM user provisioning) is available on our Enterprise plan. [P5] Q7. What is your production backup schedule and retention? Production databases are backed up daily; backups are encrypted and retained for 35 days. [P6] Q8. Do you hold an ISO 27001 certification? Unanswerable. ISO 27001 certification is not covered in the provided policy excerpts; please refer to our ISO 27001 certification documentation or security compliance report. Q9. What is your contractual uptime SLA percentage? Unanswerable. Uptime SLA details are not included in the provided excerpts; please refer to our Service Level Agreement document. Q10. Will you sign a HIPAA Business Associate Agreement? Unanswerable. HIPAA BAA terms are not addressed in the provided policy excerpts; please consult our HIPAA compliance documentation.
Findings: 1. Overlapping trigger phrases - Skills: comms-drafter vs. email-drafter both “ALWAYS trigger for: ‘write me an email’, ‘draft a follow-up’, …” - Severity: WARNING - Action: REVIEW – consolidate or clarify trigger boundaries (e.g. comms-drafter for non-email copy, email-drafter for email only). 2. Circular delegation chains - None detected among the 14 skills. - Severity: INFO - Action: NONE. 3. Dangling delegation targets - comms-drafter and email-drafter reference “bonusly-brand” (not in manifest) - deal-strategy-coach and email-drafter reference “prospect-research-multithreading” (not in manifest) - Severity: CRITICAL - Action: REVIEW – create or remove these skills or adjust the references. 4. Version conflicts - No two skills declare incompatible versions of the same name. - Severity: INFO - Action: NONE. 5. Descriptions >1,024 chars - None. All description_chars ≤1,006. - Severity: INFO - Action: NONE. 6. Hard-coded IDs, dates, or person names in bodies - partner-digest: Confluence Cloud/Space/Folder IDs (`73fe98de-…`, `1958248479`, `2286616609`), example page URLs - analysis-validator: “Bonusly RevOps / SignalForge”, named shepherds (Manish, Amani) and date benchmarks (May 9 2026) - closed-lost-analysis: company examples (Softheon, Estee Lauder, Ozinga), dates (May 2026) - signalforge-feedback: Confluence page IDs (`2295136266`, `2232811524`, etc.) - Severity: WARNING - Action: REVIEW – parameterize IDs and dates or consolidate into configuration. 7. Manifest drift - Every manifest row has a corresponding SKILL.md file; no extra or missing entries. - Severity: INFO - Action: NONE.
Runbook: Incident #2026-08-29 — Reward-Worker Queue Depth 1. [M01] Acknowledge alert • Action: Acknowledge PagerDuty alert for reward-worker queue depth > 10 000 • Who: Bryce Harmon • Verification: not specified; needs confirmation • Rollback: N/A 2. [M02] Check queue depth • Action: `bundle exec rake sidekiq:queue_depth` • Who: Farid Osman • Verification: output showed 48 213 pending jobs (normal < 500) • Rollback: N/A 3. [M03] Inspect dead set • Action: inspect Sidekiq dead set (method/command not specified) • Who: Farid Osman • Verification: dead set at 112 jobs, all Redis::TimeoutError since ~ 13:58 • Rollback: N/A 4. [M04] Pause auto-recognition enqueue • Action: `bin/rails runner 'FeatureFlag.disable(:auto_recognition_enqueue)'` • Who: Farid Osman • Verification: not specified; needs confirmation • Rollback: `bin/rails runner 'FeatureFlag.enable(:auto_recognition_enqueue)'` 5. [M05] Clear dead set • Action: cleared Sidekiq dead set in Rails console (exact commands not specified) • Who: Elena Sinclair • Verification: not specified; needs confirmation • Rollback: none specified; needs confirmation 6. [M06] Scale reward-worker up • Action: `kubectl scale deployment/reward-worker --replicas=6` (was 3) • Who: Bryce Harmon • Verification: not specified here; queue depth monitored in next step • Rollback: `kubectl scale deployment/reward-worker --replicas=3` 7. [M07] Monitor queue recovery • Action: monitor queue depth (via rake or dashboard) • Who: Farid Osman • Verification: queue depth down to 9 400 and falling ≈ 1 200 /min • Rollback: N/A 8. [M08] Verify full drain and error resolution • Action: `bundle exec rake sidekiq:queue_depth`; check error rate in Datadog • Who: Cole Ingram • Verification: queue depth = 0; Datadog error rate back to baseline • Rollback: N/A 9. [M09] Re-enable auto-recognition enqueue • Action: `bin/rails runner 'FeatureFlag.enable(:auto_recognition_enqueue)'` • Who: Bryce Harmon • Verification: 40 new jobs processed cleanly over the next 3 minutes • Rollback: `bin/rails runner 'FeatureFlag.disable(:auto_recognition_enqueue)'` 10. [M10] Scale reward-worker down • Action: `kubectl scale deployment/reward-worker --replicas=3` • Who: Bryce Harmon • Verification: queue stable at 0 • Rollback: `kubectl scale deployment/reward-worker --replicas=6` — End of runbook.
First error 2026-09-03T14:01:12Z | reward-service | ERROR | Redis::TimeoutError: Connection to Redis at redis-primary:6379 timed out after 5s Cascade (in order) 1. 14:01:20Z | reward-service | ERROR | Redis::TimeoutError: retry exhausted for RewardGiveJob 2. 14:01:30Z | reward-service | ERROR | Redis::TimeoutError: retry exhausted for RewardGiveJob 3. 14:01:40Z | reward-service | ERROR | Redis::TimeoutError: retry exhausted for RewardGiveJob 4. 14:01:40Z | sidekiq | ERROR | RewardGiveJob failed: Redis::TimeoutError; retrying in 60s 5. 14:02:28Z | sidekiq | ERROR | RewardGiveJob failed: Redis::TimeoutError; retrying 6. 14:02:30Z | sidekiq | WARN | Queue reward depth above 10,000 7. 14:03:05Z | api-gateway | ERROR | 502 upstream timeout calling reward-service /gives 8. 14:03:30Z | web-app | ERROR | Give form submission failed: upstream 502 from api-gateway 9. 14:03:31Z | sidekiq | ERROR | RewardGiveJob failed: Redis::TimeoutError; retrying 10. 14:03:48Z | api-gateway | ERROR | 502 upstream timeout calling reward-service 11. 14:04:13Z | api-gateway | ERROR | 502 upstream timeout calling reward-service 12. 14:04:22Z | sidekiq | ERROR | RewardGiveJob failed: Redis::TimeoutError; retrying 13. 14:04:45Z | web-app | ERROR | Give form submission failed: upstream 502 14. 14:05:16Z | api-gateway | ERROR | 502 upstream timeout calling reward-service 15. 14:05:26Z | sidekiq | ERROR | RewardGiveJob failed: Redis::TimeoutError; retrying 16. 14:05:42Z | web-app | ERROR | Give form submission failed: upstream 502 17. 14:06:47Z | sidekiq | ERROR | RewardGiveJob failed: Redis::TimeoutError; retrying 18. 14:06:49Z | web-app | ERROR | Give form submission failed: upstream 502 19. 14:06:52Z | api-gateway | ERROR | 502 upstream timeout calling reward-service Primary job class affected: RewardGiveJob (sidekiq_jobs.csv shows J-00001 through J-00012 failing between 14:01:46Z and 14:02:57Z). Datadog query to confirm first error @service:reward-service @level:error "Connection to Redis at redis-primary:6379 timed out" What these logs do not show • Any Redis‐server–side metrics (connection count, CPU/memory, latency trends) • A correlation or request-ID tying the timeout back to a specific incoming API call • The rate of incoming Give requests at 14:01Z (no traffic volume) • Whether other services began to queue or fail before reward-service timed out • Any retry-backoff parameters or counts from the client side beyond generic “retry exhausted” messages
recognition_streaks_v2 State: on Controls: when enabled for a company, StreakTracker.record(give) runs in app/models/recognition.rb Targeting rules: segment:beta_companies Company count: 42 points_budget_guardrails State: on Controls: when enabled, BudgetService.new(company).enforce!(giver, points) runs in app/services/budget_service.rb Targeting rules: all_companies Company count: 220 slack_dm_nudges State: on Controls: when enabled, SlackDm.send_nudge(user) runs in app/jobs/nudge_job.rb Targeting rules: segment:region_na Company count: 87 redeem_flow_redesign State: off Controls: if enabled in app/controllers/redeem_controller.rb, RedeemV2Component renders; otherwise RedeemV1Component Targeting rules: targeted_list Company count: 12 analytics_dashboard_v3 State: on Controls: when enabled in app/controllers/analytics_controller.rb, @dashboard = AnalyticsV3.new(company) Targeting rules: segment:tier_three Company count: 65 ms_teams_app_v2 State: off Controls: when enabled in app/services/teams_installer.rb, TeamsAppV2.install(company) Targeting rules: targeted_list Company count: 9 legacy_give_modal State: off Controls: no code reference found Targeting rules: segment:legacy_plan Company count: 14 survey_boosters_q3 State: on Controls: no code reference found Targeting rules: segment:legacy_plan Company count: 7 paused_offboard_cleanup State: off Controls: no code reference found Targeting rules: none Company count: 0 Flags with no code reference: legacy_give_modal, survey_boosters_q3, paused_offboard_cleanup Flags with no targets: paused_offboard_cleanup (company_count 0, targeting_rules empty)
NDA-1 — GREEN — “Carve-outs: information that (a) is or becomes publicly available through no breach, (b) was known prior to disclosure, (c) is received from a third party without duty of confidence, (d) is independently developed, or (e) must be disclosed by law or court order.” NDA-2 — YELLOW — “Non-solicitation: ‘During the term of this Agreement and for eighteen (18) months thereafter, neither party shall solicit for employment or hire any employee of the other party with whom it came into contact under this Agreement.’” NDA-3 — RED — “Non-compete: ‘For a period of three (3) years following the Effective Date, Recipient shall not, directly or indirectly, engage in or provide services to any business that competes with Discloser's business.’”