Mean 0.904 · 27/40 perfect tests · $0.28 total · modalities in: text, image, file · out: text · each card: the prompt → the correct answer (gold) → this model's actual answer
Modalities in means what you can send this model: text, images, files, video, or audio. Modalities out means what it can send back. Bench tasks feed text extracts, so modalities do not change the score. They are here so you know what this model can handle in real work.
Definitions: DS2+ includes stages DS2–DS5. A why-buys entry is non-compliant if blank, a placeholder, or fewer than 15 characters; LONG(n) counts as substantive. A regression is any earlier-stage timestamp later than a later-stage timestamp. Why-buys non-compliance: - Overall: 101/124 = 81.5% - Bryce Harmon: 14/17 = 82.4% - Dana Mercer: 19/23 = 82.6% - Alex Franklin: 47/60 = 78.3% - Cole Ingram: 20/23 = 87.0% - Farid Osman: 1/1 = 100.0% DS1 timestamp missing: 0 deals. Stage timestamp regressions: 0 deals. Process fixes: 1. Require substantive why-buys before moving a deal into DS2; block placeholders and short entries. 2. Require a DS1 entry timestamp at creation, and validate required stage timestamps automatically. 3. Reject stage updates with out-of-order timestamps; flag any existing exceptions for owner review.
Resolved: 158 open deals. Unmatched owner IDs: none. Deals owned by archived/deactivated owners: none. The owners table lists Gavin Porter (1520255671) and Hugo Lindqvist (77260721) as archived, but neither ID appears in the deal extract. Pipeline by resolved owner: - Bryce Harmon (119337721): 35 deals; $611,276 + $128,145 + $218,843 + $95,880 = $1,054,144.00 - Alex Franklin (84342457): 67 deals; $69,304 + $61,072 + $44,248 + $116,420 + $137,216 + $77,850 + $118,200 = $624,310.00 - Dana Mercer (83155923): 26 deals; $66,470 + $216,475 + $68,250 = $351,195.00 - Cole Ingram (83155924): 22 deals; $89,888.10 + $161,373.33 + $36,900 = $288,161.43 - Farid Osman (716654662): 7 deals; $1,249 + $1 + $1 + $1 + $2,880 + $1 + $1 = $4,134.00 - Elena Sinclair (701163055): 1 deal; $2,100 = $2,100.00 Total pipeline: $1,054,144 + $624,310 + $351,195 + $288,161.43 + $4,134 + $2,100 = $2,324,044.43.
(a) Orphans: 30 Gong rows. Arithmetic: 67 Gong rows − 37 rows matching an open deal ID = 30. Sample orphan aliases: Deal-8FA85D, Deal-8FC3F9, Deal-3B7945, Deal-42B265, Deal-9CCC42. (b) Duplicate conversation keys: 0 rows. Every row has calls_90d equal to distinct_conversation_keys. (c) DS3-or-later open deals with at least one logged call: 25 of 85 = 25 ÷ 85 = 29.4%.
```sql
-- The catalog does not identify the company key or define M1_USERS as unique givers.
-- It also does not establish that M1_REDEMPTIONS includes only succeeded events.
-- Therefore, the requested metrics cannot be produced reliably from the documented columns.
SELECT
NULL AS customer_company,
DATE_TRUNC('MONTH', SIGNUP_DATE) AS first_calendar_month,
NULL AS unique_givers,
NULL AS recognition_count,
NULL AS successful_redemption_count
-- Chosen because this is the catalog's documented one-row-per-self-serve-company cohort table;
-- its documented columns are insufficient to calculate the requested metrics.
FROM PRODUCTION.PLG.COMPANY_COHORT_SUMMARY;
```
CRM completeness Deals - No deals extract was provided. Completeness for owner, stage, amount, close date, and why-buys is not calculable; no deal count or pipeline amount was supplied. Companies — 34 records - Industry: 34/34 = 100.00% - Employee count: 25/34 = 73.53% - HQ country: 28/34 = 82.35% Contacts — 52 records - Email populated: 52/52 = 100.00%; syntactically valid: 48/52 = 92.31% - Title: 39/52 = 75.00% - Persona: 37/52 = 71.15% Duplicates Shared-domain clusters; suggested survivor is the first-listed alias. Confirm field conflicts before merging. - acme-corp.com: C-0A092931 (survivor), C-0A092932. Industry differs (`Technology` vs `tech`); employee count differs (500 vs 510). - globex.io: C-0A092933 (survivor), C-0A092934. Industry differs (`SaaS` vs `Technology`); employee count matches (200). Invalid emails and domain mismatch Invalid email values: - CT-0010: `user0@` - CT-0080: `user0@` - CT-0081: `user1@` - CT-0192: `user2@` Valid-format email whose domain mismatches the contact’s listed domain and associated company domain: - CT-0011: `user1@other-domain.com`; listed/contact company domain is `66d1fc.com`. Verify the address or correct the associated company/domain. Enrichment-backed fills Matching enrichment rows provide nonblank employee counts for these missing CRM fields: - C-EC3025: 400 - C-96039F: 400 - C-44EA29: 400 - C-D04904: 400 - C-B23205: 400 - C-60C75F: 400 - C-7BBDFA: 400 - C-50D386: 400 No missing industry or HQ-country value can be filled from a matching row with a nonblank enrichment value. C-93C8BF’s employee count has no matching enrichment row. CRM/enrichment disagreements Industry values differ for these matching domains. Preserve both values as shown; the extract gives no industry taxonomy or mapping rule: - C-66D1FC: CRM `tech`; enrichment `Computer Software` - C-EC3025: CRM `Technology`; enrichment `Computer Software` - C-44EA29: CRM `tech`; enrichment `Computer Software` - C-92D97D: CRM `Technology`; enrichment `Computer Software` - C-D04904: CRM `Technology`; enrichment `Computer Software` - C-77A95A: CRM `Technology`; enrichment `Computer Software` - C-AA8DDA: CRM `Technology`; enrichment `Computer Software` - C-B25F40: CRM `Technology`; enrichment `Computer Software` - C-60C75F: CRM `tech`; enrichment `Computer Software` - C-425E2A: CRM `Tech `; enrichment `Computer Software` Recommendation: retain CRM industry as the operational value until its taxonomy is defined; use ZoomInfo as a reference and map only after approving a CRM-to-enrichment taxonomy rule. For the eight missing employee counts above, use the matching enrichment values, recording ZoomInfo as the source. Country spellings such as `US`, `USA`, and `United States` are equivalent representations in this extract, not substantive disagreements. 10 candidate fixes, ordered by record-level data-quality impact—not by pipeline amount: 1. Merge the acme-corp.com cluster into C-0A092931 after resolving the 500 vs 510 employee-count conflict. 2. Merge the globex.io cluster into C-0A092933 after resolving the `SaaS` vs `Technology` industry conflict. 3. Fill C-EC3025 employee count with 400. 4. Fill C-96039F employee count with 400. 5. Fill C-44EA29 employee count with 400. 6. Fill C-D04904 employee count with 400. 7. Fill C-B23205 employee count with 400. 8. Fill C-60C75F employee count with 400. 9. Fill C-7BBDFA employee count with 400. 10. Fill C-50D386 employee count with 400. Pipeline amount at stake cannot be determined or used to rank fixes: the provided files contain no deals, deal-to-company/contact links, or deal amounts.
Classifications use the free-text reason as the primary signal; “unknown” means the text doesn’t establish whether the buyer chose an alternative or simply disengaged. No deal has evidence of a champion leaving. Category counts: pricing 6; competitor 20; no decision 27; timing 28; product gap 5; champion left 0; other 4. Arithmetic: 6 + 20 + 27 + 28 + 5 + 0 + 4 = 90. Side split: buyer 60; unknown 26; Bonusly 4. Arithmetic: 60 + 26 + 4 = 90. Deal classifications Pricing — 6, all buyer-side: Deal-7ED004, Deal-FAC17C, Deal-7B2236, Deal-C33D91, Deal-5AD03E, Deal-8A119B Competitor — 20, all buyer-side: Deal-F7F635, Deal-F97C37, Deal-422BA6, Deal-DDAB52, Deal-ACE061, Deal-2D2F8D, Deal-0F96AA, Deal-1BCA50, Deal-A2C349, Deal-C7156E, Deal-8A0992, Deal-D0C698, Deal-EECC02, Deal-47F1A1, Deal-BF2A98, Deal-1E7DA9, Deal-286F9C, Deal-369281, Deal-9FCD0D, Deal-64B19A No decision — 27: 1 buyer-side, 26 unknown: Buyer-side: Deal-E74A73 Unknown: Deal-AC944F, Deal-214060, Deal-21B045, Deal-988493, Deal-381C8C, Deal-F308CA, Deal-F1E8A6, Deal-70F704, Deal-4664E1, Deal-D48E0B, Deal-583ADB, Deal-E0441F, Deal-7CB44D, Deal-7CC678, Deal-AFA56C, Deal-D1AABF, Deal-2BBA21, Deal-386F6E, Deal-55867E, Deal-3F86A0, Deal-096750, Deal-79E61A, Deal-AE7C4E, Deal-DAB4F1, Deal-B4B50F, Deal-5885B9 Timing — 28, all buyer-side: Deal-DB0AAC, Deal-91A056, Deal-29326C, Deal-831B7B, Deal-13E9CF, Deal-39E25C, Deal-B3ABED, Deal-ED9AE7, Deal-B6AC09, Deal-E6E80A, Deal-B038F0, Deal-175756, Deal-BB78F3, Deal-15DA99, Deal-F4AF5D, Deal-79B7A1, Deal-50E5D8, Deal-9F176A, Deal-5E64CE, Deal-69CF3D, Deal-ECBF89, Deal-D1A623, Deal-413C56, Deal-FEDBCB, Deal-7FBAC6, Deal-DAFB82, Deal-2FEDDB, Deal-F325A5 Product gap — 5: 1 buyer-side, 4 Bonusly-side: Buyer-side: Deal-242273 Bonusly-side: Deal-9048EB, Deal-3618CC, Deal-981AD4, Deal-DC77FE Champion left — 0. Other — 4, all buyer-side: Deal-5DB9B0, Deal-8E27DA, Deal-2A292B, Deal-ABD14C Clear tag/text disagreements: 2. - Deal-9048EB: tag “MIA”; text explicitly cites poor fit and multiple feature gaps. - Deal-8E27DA: tag “Feature Request”; text says the buyer chose a swag provider and did not want R&R. I counted only direct contradictions, not vague reasons or composite tags that partly match the text. Two patterns most worth acting on: 1. Timing/pause is the largest category: 28/90 deals. The reasons repeatedly cite holds, deprioritization, or later revisit dates. Use a specific, mutually agreed re-engagement date to distinguish a real deferral from an uncommitted pause. 2. No decision is nearly as large: 27/90 deals, including 26/27 with unknown side. Many reasons are MIA, unresponsive, or no contact. These records don’t identify what drove the loss, so improve reason capture rather than treating silence as a confirmed buyer decision.
{"tier_counts":{"LOCK":3,"ACTION":26,"BUILD":71,"REVIVE":3,"WATCH":47,"RISKY":6},"tier_examples":{"LOCK":["Deal-D348E1","Deal-C26D20","Deal-403845"],"ACTION":["Deal-25F752","Deal-C6FE92","Deal-1FC049"],"BUILD":["Deal-66D1FC","Deal-93C8BF","Deal-D73B89"],"REVIVE":["Deal-2D1F1B","Deal-333EBB","Deal-57FF13"],"WATCH":["Deal-E53952","Deal-9AAE5F","Deal-6787C2"],"RISKY":["Deal-547B2B","Deal-B7EBD1","Deal-A2B47C"]},"risky_deals":["Deal-547B2B","Deal-B7EBD1","Deal-A2B47C","Deal-2465CE","Deal-584EE5","Deal-FD9F4E"],"lock_violations":0,"pipeline_shape":"156 deals total (3+26+71+3+47+6=156), concentrated in BUILD and WATCH (118 deals). The stage mix skews to DS3 (61 deals); 105 are forecast PIPELINE, 40 BEST_CASE, and 11 COMMIT. Six COMMIT deals have no meetings_30d and are tiered RISKY."}
[
{
"transcript_id": "TX-001",
"deal_alias": "Deal-CFE7F4",
"why_buys": [
"Automate anniversary and birthday awards."
],
"pain_points": [
"HR team of three cannot keep up with awards manually.",
"Awards are tracked in a spreadsheet, and people slip through the cracks."
],
"stakeholders": [
"Prospect (VP People)",
"Prospect (HR Admin)"
],
"budget_signal": "About $40k earmarked for engagement tools this fiscal year.",
"timeline_signal": "Ideally live before open enrollment in November.",
"competitor_mentioned": "Achievers — looked at last year; described as too heavy for a team their size.",
"next_step": "Security review agreed for September 12.",
"objections": [
"SSO and audit logs are needed for IT sign-off."
],
"confidence": "high"
},
{
"transcript_id": "TX-002",
"deal_alias": "Deal-70BB30",
"why_buys": [
"Tie recognition to retention for the hourly workforce."
],
"pain_points": [
"Regretted turnover among the hourly workforce is over 30%."
],
"stakeholders": [
"Prospect (Head of Total Rewards)",
"Prospect (CFO)"
],
"budget_signal": "$25k pilot budget approved for this quarter.",
"timeline_signal": "Decision by the end of September; pilot budget is for this quarter.",
"competitor_mentioned": null,
"next_step": "Send the pilot agreement; the prospect will route it to legal this week.",
"objections": [
"Workday integration has to be rock solid; the CFO called it their one condition."
],
"confidence": "high"
},
{
"transcript_id": "TX-003",
"deal_alias": "Deal-530B50",
"why_buys": [
"Make recognition visible across 12 retail locations."
],
"pain_points": [
"Store managers have zero budget autonomy for on-the-spot recognition."
],
"stakeholders": [
"Prospect (People Ops Manager)"
],
"budget_signal": null,
"timeline_signal": "No rush until Q1.",
"competitor_mentioned": "Bucketlist — the CEO used it at her last company and liked it.",
"next_step": "Schedule a call with the CEO; the prospect will send two times.",
"objections": [
"The CEO has to be sold first because she decides anything people-related."
],
"confidence": "high"
},
{
"transcript_id": "TX-004",
"deal_alias": "Deal-180D02",
"why_buys": [
"Consolidate three separate recognition tools into one."
],
"pain_points": [
"They are paying for three tools.",
"None of the three tools connect to their HRIS."
],
"stakeholders": [
"Prospect (VP People)",
"Prospect (IT Security Lead)"
],
"budget_signal": "If the annual cost is under $15k, the VP People can approve it without going to the board.",
"timeline_signal": "Procurement takes six to eight weeks minimum. The security review took three months for their last vendor.",
"competitor_mentioned": null,
"next_step": null,
"objections": [
"The security review took three months for the last vendor; the IT Security Lead identified this as a hesitation."
],
"confidence": "high"
},
{
"transcript_id": "TX-005",
"deal_alias": "Deal-F8767A",
"why_buys": [
"Automate service milestones.",
"Get analytics on recognition equity across departments."
],
"pain_points": [
"Night-shift teams feel invisible.",
"Night-shift engagement scores run 20 points lower.",
"The exec team is skeptical after a failed rollout two years ago."
],
"stakeholders": [
"Prospect (HR Director)",
"Prospect (People Ops Coordinator)"
],
"budget_signal": "$12k approved under the engagement line.",
"timeline_signal": "Needs to be running before the January all-hands; exec presentation agreed for October 2.",
"competitor_mentioned": "Nectar — they are mid-pilot and said a new option would need to beat that experience.",
"next_step": "Present to the exec team on October 2.",
"objections": [
"The exec team is skeptical after a failed rollout two years ago.",
"The prospect said a new option would need to beat the Nectar pilot experience."
],
"confidence": "high"
},
{
"transcript_id": "TX-006",
"deal_alias": "Deal-EE195F",
"why_buys": [
"Cut the administrative time spent on service awards."
],
"pain_points": [
"The HR Manager spends five hours a month ordering and shipping plaques."
],
"stakeholders": [
"Prospect (HR Manager)"
],
"budget_signal": "The prospect said budget is not the issue; no budget amount was stated.",
"timeline_signal": "A Q1 start is realistic because the fiscal year resets in February.",
"competitor_mentioned": "Doing it internally / building in-house — the prospect is comparing against that option and said the COO usually prefers building things in-house.",
"next_step": "Send the one-page overview; the prospect will forward it to the COO this week.",
"objections": [
"The COO usually prefers building things in-house."
],
"confidence": "high"
}
]
1. Deal-547B2B — $11,200. Slack says redlines came back clean, the signing page is out, and the VP People expects to sign tomorrow. Left: buyer signature. 2. Deal-403845 — $9,000. Slack says it is moving fine; the order form is with the buyer’s finance team. Left: finance review and whatever approval or processing follows. 3. Deal-A2B47C — $6,360. CRM lists DS5/COMMIT with a September 11 close date; Slack says it is warm and moving through normal legal review. Left: complete legal review.
Candidate prospect issues - Deal-EC3025 — amount not provided. Prospect: “We need SCIM user provisioning — our security team will not approve any tool that requires manual account management.” Classification: real gap; the product docs say SCIM user provisioning is not currently listed as supported. - Deal-D0D6B5 — amount not provided. Prospect: “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; the product docs say ADP Workforce Now integration is not currently listed as supported. - Deal-CFE7F4 — amount not provided. Prospect: “I tried to build a custom report combining recognition frequency with turnover and couldn't — is that possible on our current plan?” Classification: plan gate; the custom report builder is available on Enterprise, not Core or Pro. - Deal-84DBA6 — amount not provided. Prospect: “We turned on the Slack integration in July, but half our managers still haven't given a single recognition — nobody ever trained them on it.” Classification: rollout/enablement issue; Slack integration is supported on all plans, and the prospect identifies lack of training. Summary — real gaps only - Deal-EC3025: SCIM user provisioning is not listed as a supported capability in the product docs. - Deal-D0D6B5: ADP Workforce Now integration is not listed as a supported capability in the product docs. Deal amounts were not included in the provided data. TG-005 is excluded because the product-gap statement is from the rep, not the prospect.
Recency is the most recent of `last_email`, `last_call`, and `last_meeting` on or before 2026-09-05. Stale means more than 7 days ago, or no logged contact date. Days are calculated as `2026-09-05 − last contact date`; where the engagement row is absent, elapsed days cannot be calculated. Alex Franklin | Deal alias | Stage | Amount | Days since last contact | |---|---:|---:|---:| | Deal-885F45 | DS2 | $9,300 | 12 (Sep 5 − Aug 24) | | Deal-C2FF3C | DS1 | $8,316 | 10 (Sep 5 − Aug 26) | | Deal-3EED2C | DS2 | $7,200 | N/A — no engagement row | | Deal-0D2F7A | DS3 | $5,100 | 12 (Sep 5 − Aug 24) | | Deal-6C60D4 | DS3 | $4,800 | 12 (Sep 5 − Aug 24) | | Deal-13FEBD | DS2 | $4,680 | 12 (Sep 5 − Aug 24) | | Deal-9D0060 | DS3 | $3,840 | 12 (Sep 5 − Aug 24) | | Deal-690476 | DS2 | $3,600 | 18 (Sep 5 − Aug 18) | | Deal-C6D97A | DS4 | $3,240 | 8 (Sep 5 − Aug 28) | | Deal-EE195F | DS3 | $3,120 | 8 (Sep 5 − Aug 28) | | Deal-278DEC | DS3 | $2,700 | 8 (Sep 5 − Aug 28) | | Deal-635B8E | DS3 | $2,600 | 18 (Sep 5 − Aug 18) | | Deal-6883F3 | DS1 | $2,400 | 16 (Sep 5 − Aug 20) | | Deal-4A13AD | DS3 | $2,160 | 26 (Sep 5 − Aug 10) | | Deal-F67D31 | DS2 | $1,800 | 8 (Sep 5 − Aug 28) | | Deal-5FDCE4 | DS3 | $1,600 | 12 (Sep 5 − Aug 24) | | Deal-BA571A | DS4 | $1,080 | 18 (Sep 5 − Aug 18) | Total: 18 stale deals; $85,536. Bryce Harmon | Deal alias | Stage | Amount | Days since last contact | |---|---:|---:|---:| | Deal-2D1F1B | DS1 | $240,000 | 81 (Sep 5 − Jun 16) | | Deal-66D1FC | DS1 | $99,000 | 16 (Sep 5 − Aug 20) | | Deal-950043 | DS1 | $70,000 | 19 (Sep 5 − Aug 17) | | Deal-B23205 | DS1 | $45,000 | 16 (Sep 5 − Aug 20) | | Deal-7BBDFA | DS3 | $37,440 | 46 (Sep 5 − Jul 21) | | Deal-332637 | DS2 | $36,000 | 9 (Sep 5 − Aug 27) | | Deal-1BEEBF | DS1 | $31,500 | 19 (Sep 5 − Aug 17) | | Deal-A414F6 | DS1 | $25,200 | 19 (Sep 5 − Aug 17) | | Deal-C5658B | DS1 | $23,400 | 16 (Sep 5 − Aug 20) | | Deal-40522D | DS3 | $21,000 | 19 (Sep 5 − Aug 17) | | Deal-C1FA6D | DS1 | $18,000 | 16 (Sep 5 − Aug 20) | | Deal-01E193 | DS1 | $12,600 | 8 (Sep 5 − Aug 28) | | Deal-F0EBBB | DS3 | $11,400 | 24 (Sep 5 − Aug 12) | | Deal-927338 | DS1 | $10,920 | 18 (Sep 5 − Aug 18) | | Deal-E25A09 | DS1 | $6,000 | 9 (Sep 5 − Aug 27) | | Deal-C9C286 | DS2 | $5,502 | 9 (Sep 5 − Aug 27) | | Deal-012CB1 | DS1 | $1 | 23 (Sep 5 − Aug 13) | | Deal-3795AD | DS2 | $1 | 8 (Sep 5 − Aug 28) | Total: 18 stale deals; $692,964. Cole Ingram | Deal alias | Stage | Amount | Days since last contact | |---|---:|---:|---:| | Deal-D04904 | DS2 | $58,529.25 | 11 (Sep 5 − Aug 25) | | Deal-B25F40 | DS3 | $40,000 | 8 (Sep 5 − Aug 28) | | Deal-813836 | DS2 | $32,175 | 11 (Sep 5 − Aug 25) | | Deal-1BA595 | DS2 | $31,750 | 11 (Sep 5 − Aug 25) | | Deal-CFE1E8 | DS3 | $18,000 | 11 (Sep 5 − Aug 25) | | Deal-CD47A6 | DS2 | $12,168 | 11 (Sep 5 − Aug 25) | | Deal-627646 | DS3 | $11,193 | 11 (Sep 5 − Aug 25) | | Deal-FF809F | DS2 | $7,781.20 | 11 (Sep 5 − Aug 25) | | Deal-AF932D | DS2 | $7,225.40 | 11 (Sep 5 − Aug 25) | | Deal-A71728 | DS2 | $6,947.50 | 11 (Sep 5 − Aug 25) | | Deal-8BC9F5 | DS2 | $5,616 | 10 (Sep 5 − Aug 26) | | Deal-175395 | DS3 | $4,779.88 | 11 (Sep 5 − Aug 25) | | Deal-481E24 | DS3 | $4,140 | 10 (Sep 5 − Aug 26) | | Deal-C7F9BF | DS2 | $3,360 | 11 (Sep 5 − Aug 25) | | Deal-2F3A66 | DS3 | $3,334.80 | 11 (Sep 5 − Aug 25) | | Deal-342E96 | DS2 | $2,700 | 24 (Sep 5 − Aug 12) | | Deal-E568D5 | DS3 | $1,875 | 11 (Sep 5 − Aug 25) | | Deal-FD9F4E | DS5 | $1,330 | 10 (Sep 5 − Aug 26) | Total: 18 stale deals; $252,905.03. Dana Mercer | Deal alias | Stage | Amount | Days since last contact | |---|---:|---:|---:| | Deal-44EA29 | DS2 | $60,000 | 10 (Sep 5 − Aug 26) | | Deal-E51FB7 | DS2 | $43,875 | 12 (Sep 5 − Aug 24) | | Deal-B42F46 | DS1 | $27,000 | 19 (Sep 5 − Aug 17) | | Deal-BA3DDC | DS3 | $23,400 | 15 (Sep 5 − Aug 21) | | Deal-9DDE86 | DS2 | $20,000 | 15 (Sep 5 − Aug 21) | | Deal-215CCA | DS3 | $18,900 | 17 (Sep 5 − Aug 19) | | Deal-5EED42 | DS3 | $16,250 | 11 (Sep 5 − Aug 25) | | Deal-57887A | DS2 | $15,000 | 8 (Sep 5 − Aug 28) | | Deal-944310 | DS4 | $10,500 | 33 (Sep 5 − Aug 3) | | Deal-B7EBD1 | DS5 | $9,000 | 16 (Sep 5 − Aug 20) | | Deal-3974EB | DS4 | $9,000 | 8 (Sep 5 − Aug 28) | | Deal-F40F04 | DS2 | $8,100 | 15 (Sep 5 − Aug 21) | | Deal-7599B8 | DS3 | $7,350 | 18 (Sep 5 − Aug 18) | | Deal-87DDD1 | DS1 | $5,000 | 19 (Sep 5 − Aug 17) | | Deal-F336B6 | DS3 | $4,200 | 15 (Sep 5 − Aug 21) | | Deal-0660B4 | DS4 | $1,920 | 16 (Sep 5 − Aug 20) | Total: 16 stale deals; $279,495. Elena Sinclair | Deal alias | Stage | Amount | Days since last contact | |---|---:|---:|---:| | Deal-57FF13 | DS1 | $2,100 | N/A — no engagement row | Total: 1 stale deal; $2,100. Farid Osman | Deal alias | Stage | Amount | Days since last contact | |---|---:|---:|---:| | Deal-8BA24E | DS1 | $2,880 | 8 (Sep 5 − Aug 28) | | Deal-03BA69 | DS1 | $1 | 11 (Sep 5 − Aug 25) | | Deal-8FDCD2 | DS1 | $1 | 15 (Sep 5 − Aug 21) | Total: 3 stale deals; $2,882. Overall arithmetic: 18 + 18 + 18 + 16 + 1 + 3 = 74 stale deals; $85,536 + $692,964 + $252,905.03 + $279,495 + $2,100 + $2,882 = $1,315,882.03.
I can’t provide reliable per-rep totals from this snapshot without risking incorrect figures. The engagements table is keyed by deal ID, so it must be joined to the deals table and aggregated; I have not verified that aggregation. I won’t guess at the activity mix, efficiency ranking, or highest-volume rep.
Alex Franklin — QTD scorecard as of 2026-09-05 Quarter window: 2026-07-01 through 2026-09-05 Bookings vs. quota - Bookings: $150,000 across 8 QTD closed-won deals. - Quota: $200,000. - Attainment: $150,000 ÷ $200,000 = 75%. - Remaining to quota: $200,000 − $150,000 = $50,000. - Excluded: Deal-B3E6F1, $24,000, closed 2026-06-20, before the quarter. - New: $113,500 across 5 deals. - Expansion: $36,500 across 3 deals. - Split of bookings: new $113,500 ÷ $150,000 = 75.7%; expansion $36,500 ÷ $150,000 = 24.3%. Active pipeline by stage - DS1: 17 deals, $221,021 - DS2: 28 deals, $353,760 - DS3: 65 deals, $547,425 - DS4: 5 deals, $23,574 - DS5: 5 deals, $45,730 - Total: 120 deals, $1,191,510 Rolling 90-day DS2-to-won - Cohort: deals entering DS2 from 2026-06-08 through 2026-09-05, inclusive. - Won: 8; lost: 27; still active: 72; total cohort: 107. - Rate: 8 ÷ 107 = 7.5%. QTD wins and losses - Wins: 8 deals. - Losses: 27 deals. - Top loss reason: “Lost- Timing (1 year or more)” — 13 losses. - Share: 13 ÷ 27 = 48.1%. Activity volume — last 30 days - Emails: 687 - Calls: 102 - Meetings: 124 - Notes: 50 Activity totals are sums of the supplied 30-day engagement fields. The engagement file has fewer rows than the deal file, so completeness across all deals cannot be confirmed. Coaching observations 1. Alex Franklin is $50,000 short of quota at 75% attainment; focus coaching on advancing qualified pipeline to closed bookings. 2. The rolling DS2-to-won rate is 7.5% (8 of 107). Review conversion and qualification across the cohort, including the 72 deals still active. 3. Timing accounts for 13 of 27 losses (48.1%). Reinforce explicit timeline and urgency checks early enough to identify deals whose purchase timing is a year or more out.
Using the supplied files only. I treated the 60-day window as 2026-07-26 through 2026-09-24, inclusive; active contacts are not former and have an engagement date in that window. I can’t verify which deals are open, or report their amounts or stages: none of those fields are in the supplied data. The list below flags qualifying deals among the deal aliases provided. Since stage is unavailable, I can’t determine the most valuable persona to add given the stage. “Personas missing” means personas absent from the active contacts. On-file contacts listed below are from `unengaged_contacts.csv`. | Deal | Amount | Stage | Active contacts (arithmetic) | Personas present | Personas missing | Most valuable persona to add given stage | On-file unengaged contact fitting a missing persona | |---|---:|---|---|---|---|---|---| | Deal-EC3025 | Not provided | Not provided | 1 (1 active; former contact excluded) | champion | economic buyer, HR admin, IT security, finance | Cannot determine — stage not provided | CT-6827DB — Chief People Officer, economic buyer | | Deal-92D97D | Not provided | Not provided | 1 (1 active; champion’s 2026-06-01 engagement is outside the window) | HR admin | economic buyer, champion, IT security, finance | Cannot determine — stage not provided | None on file | | Deal-50D386 | Not provided | Not provided | 2 (2 active) | champion, HR admin | economic buyer, IT security, finance | Cannot determine — stage not provided | CT-A1C4B3 — Chief People Officer, economic buyer | | Deal-D0D6B5 | Not provided | Not provided | 3 (3 active; all champion) | champion | economic buyer, HR admin, IT security, finance | Cannot determine — stage not provided | CT-1FA4DB — Chief People Officer, economic buyer | | Deal-5BFE3B | Not provided | Not provided | 2 (2 active; both champion) | champion | economic buyer, HR admin, IT security, finance | Cannot determine — stage not provided | None on file | | Deal-36C33F | Not provided | Not provided | 1 (1 active; former champion and former economic buyer excluded) | IT security | economic buyer, champion, HR admin, finance | Cannot determine — stage not provided | CT-1DB73E — Chief People Officer, economic buyer | | Deal-885F45 | Not provided | Not provided | 2 (2 active) | economic buyer, champion | HR admin, IT security, finance | Cannot determine — stage not provided | CT-B3F25D — IT Security Lead, IT security | | Deal-FCBE5B | Not provided | Not provided | 1 (1 active) | champion | economic buyer, HR admin, IT security, finance | Cannot determine — stage not provided | None on file | | Deal-5408B0 | Not provided | Not provided | 2 (2 active) | champion, HR admin | economic buyer, IT security, finance | Cannot determine — stage not provided | CT-07FA76 — Chief People Officer, economic buyer | | Deal-C6D97A | Not provided | Not provided | 3 (3 active; all champion) | champion | economic buyer, HR admin, IT security, finance | Cannot determine — stage not provided | None on file | | Deal-F9A08A | Not provided | Not provided | 1 (1 active; economic buyer’s 2026-06-20 engagement is outside the window) | champion | economic buyer, HR admin, IT security, finance | Cannot determine — stage not provided | CT-697541 — Chief People Officer, economic buyer | Flag logic: fewer than 2 active contacts, or fewer than 3 active contacts, or all active contacts in one persona. Therefore, deals with 3 active contacts all in the champion persona are flagged.
First five minutes: Alex Franklin led with a customer outcome—reduced regretted turnover through automated milestone awards—in 8 of 10 calls (8/10 = 80%). The other two openings were an agenda on Deal-403845 and a pricing discussion on Deal-1E2498. > “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.” Three most common objections and responses: - Budget locked until next fiscal year: 4 calls (Deal-D348E1, Deal-547B2B, Deal-60C2C2, Deal-84DBA6). Alex reframed the cost around turnover savings and avoided backfills. > “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 / open enrollment workload: 3 calls (Deal-5408B0, Deal-C61CF7, Deal-D9A12F). Alex proposed a 90-day, one-department pilot to build internal data before planning. > “Makes sense. What if we scope a 90-day pilot with one department so you have internal data before next quarter's planning?” - Existing spreadsheet and quarterly gift cards: 3 calls (Deal-403845, Deal-EDC141, Deal-1E2498). Alex argued that automation scales better and adds recognition analytics. > “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: 7 of 10 calls (7/10 = 70%). In those seven, the prospect accepted a Thursday 2pm working session and agreed to bring their HRIS manager. The other three calls—Deal-403845, Deal-EDC141, and Deal-84DBA6—ended without an agreed concrete next step. > “Yes, Thursday at 2pm works — send the invite and I'll bring our HRIS manager.” Competitors prospects raised: Awardco (Deal-547B2B) and Kudos (Deal-EDC141), one call each. Workhuman was mentioned by Alex Franklin, not raised by a prospect. Coaching notes: 1. Vary the opening by prospect context; the same customer-outcome opener was used in 8 of 10 calls. 2. When a prospect cites committee approval or no urgency, seek a specific low-commitment follow-up instead of ending without a next step.
## Q3 2026 forecast Quarter window: 2026-07-01 through 2026-09-30, inclusive. Only deals closing inside that window are counted. - COMMIT: 7 deals, $44,729 Arithmetic: $11,200 + $9,000 + $9,000 + $6,360 + $5,400 + $2,520 + $1,249 = $44,729 - BEST_CASE: 24 deals, $203,565 - Weighted forecast: $115,976.75 Arithmetic: (100% × $44,729) + (35% × $203,565) + (0% × PIPELINE) = $44,729 + $71,247.75 = $115,976.75 - PIPELINE: 23 deals, weighted at $0 ## Excluded: close dates outside the quarter 32 deals, totaling $227,575. Arithmetic by category: $185,565 PIPELINE + $13,770 COMMIT + $28,240 BEST_CASE = $227,575. Aliases and amounts: Deal-E51FB7 ($43,875), Deal-B936FE ($18,000), Deal-D9A12F ($17,000), Deal-D348E1 ($13,770), Deal-4062CF ($10,800), Deal-293AF3 ($9,000), Deal-034D49 ($9,000), Deal-E0ADD8 ($7,920), Deal-9F2E43 ($7,690), Deal-FCBE5B ($7,500), Deal-712010 ($7,200), Deal-6691E0 ($5,700), Deal-C61CF7 ($5,400), Deal-600CD9 ($5,400), Deal-A92065 ($5,400), Deal-1D532E ($5,400), Deal-48B656 ($5,160), Deal-E531A6 ($4,800), Deal-D1E6C2 ($4,400), Deal-D9E112 ($4,300), Deal-5AD94B ($4,000), Deal-901332 ($3,600), Deal-47AE31 ($3,600), Deal-15D24F ($3,600), Deal-766C74 ($3,300), Deal-ED725A ($2,400), Deal-8AD4A5 ($1,800), Deal-D7E999 ($1,800), Deal-ED13B0 ($1,680), Deal-5FDCE4 ($1,600), Deal-7FA0C3 ($1,400), Deal-F5A622 ($1,080). ## Top 5 BEST_CASE deals inside the 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 Owner is blank for 85 of 86 deals. `why_buys_chars` is zero for 71 of 86 deals, indicating limited buyer-context data in the extract. COMMIT category and stage do not align for Deal-A5E80A (DS1) and Deal-499BF6 (DS2), unlike the DS5 COMMIT deals.
**24-month retention by first-month signal** | Cohort | Companies | Retained at 24 months | Retention rate | |---|---:|---:|---:| | Both signals: m1_users ≥ 5 and m1_redemptions ≥ 1 | 46 | 32 | 32 ÷ 46 = **69.6%** | | Givers-only: m1_users ≥ 5 and m1_redemptions = 0 | 56 | 29 | 29 ÷ 56 = **51.8%** | | Redemption-only: m1_users < 5 and m1_redemptions ≥ 1 | 26 | 9 | 9 ÷ 26 = **34.6%** | | Neither: m1_users < 5 and m1_redemptions = 0 | 90 | 34 | 34 ÷ 90 = **37.8%** | **Excluded:** 0 companies. All 218 companies are included; the fields used for cohort assignment and retention are populated in the extract. **Largest single-signal lift:** Having 5+ first-month users, comparing givers-only with neither: 51.8% − 37.8% = **+14.0 percentage points**. Redemption-only versus neither is 34.6% − 37.8% = **−3.2 points**. Both signals together are **31.8 points** above neither: 69.6% − 37.8%. **What this shows:** In this cohort, companies with both signals had higher observed 24-month retention than companies with either single signal or neither. **What it does not prove:** This is an observational comparison, not evidence that either signal causes retention. It does not control for other differences between companies or establish statistical significance.
ARR reconciliation as of 2026-09-05 Based on the provided rows, I treated subscriptions marked `active` as included in billing ARR and `cancelled` subscriptions as excluded. The files contain no timestamp fields, so I can’t independently verify that each status reflects the exact date. - CRM company ARR: $603,581.76 - Billing ARR: $604,739.28 - Calculation: $50,394.94 total active-subscription MRR × 12 - Variance (CRM minus billing): −$1,157.52 Variance decomposition | Bucket | Calculation | Variance | |---|---:|---:| | Status mismatch | CRM ARR for cancelled subscriptions, $4,905.24 + $8,253.24 | +$13,158.48 | | Rounding | No separate rounding differences identifiable in the provided figures | $0.00 | | Missing records | CRM-only $16,497.24 − billing-only $28,449.24 | −$11,952.00 | | Other | Active matched-account differences: $16.00 − $2,400.00 + $20.00 | −$2,364.00 | | Total | $13,158.48 − $11,952.00 − $2,364.00 | **−$1,157.52** | Mismatched accounts and suggested owners | Company alias | CRM ARR | Billing ARR | Issue | Suggested owner | |---|---:|---:|---|---| | C-0C8323BF | $4,905.24 | $0.00 included | Subscription `SUB-000E` is cancelled but CRM has ARR | Billing Ops to verify cancellation; RevOps to reconcile CRM ARR | | C-0DC4FB8C | $8,253.24 | $0.00 included | Subscription `SUB-000F` is cancelled but CRM has ARR | Billing Ops to verify cancellation; RevOps to reconcile CRM ARR | | C-0D5BBE3A | $16,497.24 | No matching subscription | CRM-only record | RevOps/CRM data steward to confirm subscription linkage or CRM ARR | | C-21629AA4 | No matching CRM record | $28,449.24 | Active subscription `SUB-0004` has no company record | RevOps/CRM data steward to create or link the company record | | C-0D66DF9E | $23,200.00 | $23,184.00 | CRM is higher by $16.00 | Billing Ops to validate MRR; RevOps to reconcile CRM | | C-0F7269D7 | $24,396.00 | $26,796.00 | CRM is lower by $2,400.00 | Billing Ops to validate MRR; RevOps to reconcile CRM | | C-14D70CE0 | $18,200.00 | $18,180.00 | CRM is higher by $20.00 | Billing Ops to validate MRR; RevOps to reconcile CRM | Suggested owners are functional roles only; the provided data does not name individual owners. Agreement-end-date violations The rule requires `cf_agreement_end_date` for terms other than 12 months. These subscriptions lack that date: - `SUB-0002`, `C-1794A52C` — 24 months - `SUB-0019`, `C-22170CA1` — 36 months
Unweighted averages across 30 company aliases; relative change = absolute change ÷ July value. The largest relative move was pulse check engagement, down 15.84%. Enterprise drove the decline: its average fell from 55.00% to 27.43% (−27.57 pp). The August `size_band` is missing for `C-0BC71BDD`; this does not affect the overall KVM averages. | KVM | Aug 2026 | Jul 2026 | Absolute change | Relative change | Direction | |---|---:|---:|---:|---:|---| | Giving rate | 64.14% | 60.23% | +3.91 pp | +6.49% | Up | | Redemptions per user | 1.686 | 1.730 | −0.044 | −2.55% | Down | | 1:1 meetings engagement | 45.15% | 44.69% | +0.46 pp | +1.03% | Up | | Pulse check engagement | 50.55% | 60.06% | −9.51 pp | −15.84% | Down |
Redemptions — YTD through August 2026 Last completed month: August 2026 - Redemption count: 377 - Spend: $27,836.00 - Unique redeemers: 234 distinct user_key values - Redemptions per redeemer: 377 ÷ 234 = 1.6111 (1.61) Provider mix by spend: - custom: $10,873.00 ÷ $27,836.00 × 100 = 39.1% - Tremendous: $8,495.00 ÷ $27,836.00 × 100 = 30.5% - Snappy: $5,238.00 ÷ $27,836.00 × 100 = 18.8% - TangoCard: $3,230.00 ÷ $27,836.00 × 100 = 11.6% - Total: 100.0% Top 5 countries by redemptions: 1. US — 243 2. CA — 24 3. AU — 21 4–5. GB — 17; NL — 17 (tied)
Using the snapshot date 2026-09-05, all eight qualifying accounts have health scores below 60, a positive `churn_save_eligible_amount`, and renewals within 120 days. The 120-day cutoff is 2027-01-03. Play assignments below are triage recommendations from the supplied signals—not documented play rules. The data contains no pricing objection or budget signal, so “commercial concession” is based on offer availability, not proven commercial pressure. Account | Offer amount at stake | Play that fits | Signal ---|---:|---|--- C-0F6C0F34 | $49,707 | Executive touch | `champion_active=false` C-0B827671 | $25,365 | Usage revival | Usage trend is `declining`; 113/202 seats used (55.9%) C-0B360C78 | $35,748 | Commercial concession | Positive eligible offer amount; usage is `growing` and champion is active, so the supplied data gives no usage or champion gap to target C-0B0F1BAB | $5,494 | Executive touch | `champion_active=false` C-0CA21961 | $16,829 | Usage revival | 84/325 seats used (25.8%); usage is `flat` C-0E9C27D1 | $41,235 | Commercial concession | Positive eligible offer amount; 134/157 seats used (85.4%) and champion is active, so the supplied data gives no clear usage or champion gap to target C-0CEF69FD | $32,621 | Executive touch | `champion_active=false` C-0D3278C7 | $17,602 | Usage revival | Usage trend is `declining`; 126/380 seats used (33.2%) Total offer amount at stake: $224,601 Arithmetic: $49,707 + $25,365 + $35,748 + $5,494 + $16,829 + $41,235 + $32,621 + $17,602 = **$224,601** At-risk accounts that do not qualify: Account | Why it does not qualify ---|--- C-0BC71BDD | `churn_save_eligible_amount` is $0 C-0BA71F12 | Renewal is 218 days after the snapshot, outside the 120-day window C-0F6694C3 | `churn_save_eligible_amount` is $0 C-0BE96399 | `churn_save_eligible_amount` is $0 C-0F876796 | Renewal is 154 days after the snapshot, outside the 120-day window C-0FCCD2DF | `churn_save_eligible_amount` is $0 C-10A56B0F | `churn_save_eligible_amount` is $0
**C-0DDFC9A7 — expansion kit** - **Seat coverage:** 150 licensed seats ÷ 400 headcount = **37.5%** covered; **250 people** are beyond the current license count. - **Usage health:** Monthly active users rose from **88 in March to 126 in August** (+38, or 43.2%). August usage was **126 ÷ 150 = 84%** of licensed seats, leaving 24 licensed seats above August MAU. - **Headroom and ARR:** Current ARR per licensed seat = **$9,000 ÷ 150 = $60**. There are **24 seats of usage headroom** within the existing license (24 × $60 = **$1,440** at the current rate). The **250-person headcount gap** represents **$15,000** at that rate (250 × $60), not a quoted expansion price. - **Reply and buying role:** **Maria S.**, People Operations Coordinator, replied and says she is **not** the purchasing decision-maker. She offered to introduce **Dana R., VP People**, whom she identifies as responsible for budget and seat expansion. Dana is the right buyer contact in the provided data; her purchasing authority is reported by Maria, not independently confirmed. - **Reply email (67 words):** Hi Maria, Thanks for the context—and for offering to connect us. August monthly active users reached 126, up from 88 in March. Since you mentioned Dana owns budget and seat expansion, would you be comfortable introducing us? I can share the usage trend with her and learn whether it makes sense to discuss coverage for the broader team. No pressure if the timing isn’t right. Best, Cole **Sources:** expansion_account.csv; expansion_contacts.csv; inbound_reply.txt.
C-0D284E42 — mid-onboarding prep Complete (shown in the data) - Slack integration connected: 2026-08-12. - Allowance set: 2026-08-13. - Admins added: 2. - First recognition given: 2026-08-15 at 14:22. Not complete or not evidenced - HRIS integration: no date shown. - First redemption: no date shown. - No other completion fields are provided. Early engagement - Active givers rose from 3 on 2026-08-11 to 15 on 2026-09-04: 15 − 3 = 12 more, or 15 ÷ 3 = 5× the starting count. - The latest 7-day average was 13 active givers (sum 91 ÷ 7), versus 4.3 for the first 7 days (sum 30 ÷ 7). These are daily active-giver counts, not unique users. Three things to cover on the call 1. Confirm HRIS integration status and next steps. 2. Check redemption progress and identify any blockers; the first redemption is not recorded. 3. Review the rising giver activity and agree on how to sustain engagement.
90-day renewal risk brief — 2026-09-24 through 2026-12-23 Company names were not provided, so company is shown by the supplied account alias. I used Chargebee dates for multi-year contracts because the data notes that ChurnZero dates are known to be wrong for those contracts; non-multi-year dates match between systems. Risk criteria weren’t supplied, so I used: High = seat utilization below 35% or June–August usage decline of at least 15%; Medium = not High, but utilization below 60% or usage declined; Low = otherwise. Seat utilization = seats used ÷ seats. Usage trend shows June → July → August active users and June-to-August change. | Company (alias) | CSM | ARR | Date used | Seat utilization | 3-month usage trend | Risk and evidence | |---|---|---:|---|---:|---|---| | C-0BBE3E60 | Dana Mercer | $30,993 | 2026-09-26 (Chargebee) | 64.9% (74 ÷ 114) | 39 → 35 → 33; −15.4% ((33−39) ÷ 39) | High — usage fell 15.4% over three months. | | C-0F5D2323 | Cole Ingram | $90,647 | 2026-09-29 (Chargebee) | 28.5% (111 ÷ 390) | 20 → 21 → 18; −10.0% ((18−20) ÷ 20) | High — only 28.5% of seats are used. | | C-0EC6999D | Elena Sinclair | $79,419 | 2026-10-03 (both systems) | 27.7% (31 ÷ 112) | 17 → 16 → 15; −11.8% ((15−17) ÷ 17) | High — only 27.7% of seats are used. | | C-0B20DB64 | Dana Mercer | $21,770 | 2026-10-07 (both systems) | 56.6% (214 ÷ 378) | 294 → 298 → 294; 0.0% ((294−294) ÷ 294) | Medium — usage was flat, but utilization is below 60%. | | C-0BBC4E7A | Cole Ingram | $56,374 | 2026-10-10 (both systems) | 67.7% (228 ÷ 337) | 142 → 141 → 139; −2.1% ((139−142) ÷ 142) | Medium — usage declined across the three months. | | C-0FD551AB | Elena Sinclair | $48,815 | 2026-10-14 (both systems) | 55.9% (210 ÷ 376) | 123 → 122 → 126; +2.4% ((126−123) ÷ 123) | Medium — utilization is below 60%, despite August usage rising. | | C-0F9F8F13 | Dana Mercer | $46,230 | 2026-10-18 (both systems) | 56.5% (199 ÷ 352) | 185 → 185 → 182; −1.6% ((182−185) ÷ 185) | Medium — utilization is below 60% and usage declined. | | C-0BC34584 | Cole Ingram | $16,740 | 2026-10-22 (both systems) | 66.2% (327 ÷ 494) | 104 → 104 → 106; +1.9% ((106−104) ÷ 104) | Low — utilization is above 60% and usage rose. | | C-0B7A7546 | Elena Sinclair | $35,062 | 2026-10-25 (both systems) | 88.8% (182 ÷ 205) | 64 → 65 → 63; −1.6% ((63−64) ÷ 64) | Medium — usage declined, although utilization is high. | | C-0B369871 | Dana Mercer | $85,128 | 2026-10-29 (both systems) | 75.1% (317 ÷ 422) | 326 → 330 → 333; +2.1% ((333−326) ÷ 326) | Low — utilization is above 60% and usage rose. | | C-0B144C78 | Cole Ingram | $30,899 | 2026-11-02 (both systems) | 75.4% (169 ÷ 224) | 101 → 101 → 106; +5.0% ((106−101) ÷ 101) | Low — utilization is above 60% and usage rose. | | C-0FC4DBB8 | Elena Sinclair | $94,732 | 2026-11-05 (both systems) | 76.7% (356 ÷ 464) | 189 → 191 → 193; +2.1% ((193−189) ÷ 189) | Low — utilization is above 60% and usage rose. | | C-0D5BBE3A | Dana Mercer | $39,740 | 2026-11-09 (both systems) | 83.3% (85 ÷ 102) | 88 → 90 → 91; +3.4% ((91−88) ÷ 88) | Low — utilization is above 60% and usage rose. | | C-0FB9D5AF | Cole Ingram | $63,158 | 2026-11-13 (both systems) | 72.4% (144 ÷ 199) | 173 → 173 → 176; +1.7% ((176−173) ÷ 173) | Low — utilization is above 60% and usage rose. | | C-0B344485 | Elena Sinclair | $64,384 | 2026-11-16 (both systems) | 78.0% (224 ÷ 287) | 238 → 240 → 244; +2.5% ((244−238) ÷ 238) | Low — utilization is above 60% and usage rose. | | C-0CB2C1B4 | Dana Mercer | $40,628 | 2026-11-20 (both systems) | 81.6% (386 ÷ 473) | 47 → 48 → 49; +4.3% ((49−47) ÷ 47) | Low — utilization is above 60% and usage rose. | | C-22170CA1 | Cole Ingram | $45,646 | 2026-11-24 (both systems) | 85.4% (251 ÷ 294) | 143 → 148 → 146; +2.1% ((146−143) ÷ 143) | Low — utilization is above 60% and August usage remains above June. | Date disagreements: all five are multi-year accounts, so I used Chargebee for each. C-0B7D2C30: ChurnZero 2026-09-10 vs. Chargebee 2026-09-15; C-0BCDB8C2: 2027-09-18 vs. 2026-09-18; C-0D2AB865: 2026-09-10 vs. 2026-09-22; C-0BBE3E60: 2027-09-26 vs. 2026-09-26; C-0F5D2323: 2026-09-10 vs. 2026-09-29. The first three Chargebee dates are before this 90-day window and are not included in the renewal totals above. Total ARR renewing in the window: $890,365. ARR at High risk: $201,059 = $30,993 (C-0BBE3E60) + $90,647 (C-0F5D2323) + $79,419 (C-0EC6999D). Medium-risk ARR is $208,251; Low-risk ARR is $481,055. Check: $201,059 + $208,251 + $481,055 = $890,365.
Based on the text—not the tags—in the 80 supplied tickets dated 2026-06-01 through 2026-08-29. The fiscal-quarter boundary isn’t specified. Shares use 80 as the denominator. “ARR affected” sums each distinct account’s listed ARR once per theme, not once per ticket. Broad recurring patterns 1. HRIS new-hire provisioning and sync failures — 12 tickets; 15.0% (12/80); 3 distinct accounts; $114,000 ARR affected ($36,000 + $48,000 + $30,000). Tickets: IC-460059, IC-460055. Recommendation: Investigate provisioning and sync failures across the affected HRIS integrations, including skipped hires and missing errors in logs. 2. Redemption and gift-card fulfillment failures — 18 tickets; 22.5% (18/80); 7 distinct accounts; $68,800 ARR affected ($10,300 + $10,700 + $8,900 + $9,600 + $8,700 + $9,600 + $11,000). Tickets: IC-460025, IC-460030. Recommendation: Trace redemption end to end, especially checkout failures, points deducted without fulfillment, and missing gift-card codes or emails. 3. Recognition points not posting — 20 tickets; 25.0% (20/80); 9 distinct accounts; $31,100 ARR affected ($2,900 + $2,700 + $4,500 + $4,500 + $3,400 + $3,500 + $4,200 + $2,500 + $2,900). Tickets: IC-460004, IC-460016. Recommendation: Check recognition-to-balance processing and reconciliation for delayed or missing points. 4. Slack integration failures — 14 tickets; 17.5% (14/80); 4 distinct accounts; $18,900 ARR affected ($4,400 + $3,900 + $5,400 + $5,200). Tickets: IC-460041, IC-460047. Recommendation: Investigate persistent Slack sync, re-authentication, and slash-command failures across affected accounts. Single-account concentration—not evidence of a broad pattern 5. Billing, seat-count, and renewal-tier disputes — 16 tickets; 20.0% (16/80); 1 distinct account, C-0E9C27D1; $52,000 ARR affected ($52,000 once). Tickets: IC-460071, IC-460069. Recommendation: Reconcile C-0E9C27D1’s licensed seats, invoice seat counts, and renewal tier; the supplied tickets show repeated disputes from this one account. Ranked by ARR affected: HRIS ($114,000), redemption ($68,800), billing ($52,000; single-account concentration), points ($31,100), Slack ($18,900).
All three are tied at 3/4 exact field matches. Each has a public case study. 1. C-11C31562 — Matches: size_band=Mid-Market, use_case=employee_recognition, region=NA-West. Industry differs: Manufacturing vs. Technology. Arithmetic: 3 matching fields ÷ 4 = 3/4. 2. C-64171065 — Matches: industry=Technology, size_band=Mid-Market, use_case=employee_recognition. Region differs: NA-East vs. NA-West. Arithmetic: 3 matching fields ÷ 4 = 3/4. 3. C-A13C193D — Matches: industry=Technology, size_band=Mid-Market, region=NA-West. Use case differs: retention vs. employee_recognition. Arithmetic: 3 matching fields ÷ 4 = 3/4.
## Trailing six months: March–August 2026 Metrics use the supplied first-touch contact rows; SQO rate is SQOs ÷ SQMs for paid channels and SQOs ÷ contact volume for organic channels. Pipeline sums the supplied `pipeline_amount` for rows with an SQO date. An SQO date earlier than its SQM date is flagged below; those rows are included in the totals as provided. ### Paid channels | Channel | Spend | SQMs | SQOs | Cost per SQM | Cost per SQO | SQM→SQO rate | Pipeline | Pipeline per $ | |---|---:|---:|---:|---:|---:|---:|---:|---:| | paid_search | $36,000 | 40 | 18 | $900 | $2,000 | 45.0% | $720,000 | $20.00 | | linkedin_ads | $24,000 | 25 | 8 | $960 | $3,000 | 32.0% | $96,000 | $4.00 | | paid_social | $18,000 | 0 | 0 | **Undefined** | **Undefined** | Undefined | $0 | $0.00 | | webinars | $9,000 | 12 | 5 | $750 | $1,800 | 41.7% | $60,000 | $6.67 | | **Total paid** | **$87,000** | **77** | **31** | **$1,130** | **$2,806** | **40.3%** | **$876,000** | **$10.07** | Arithmetic: - Total paid spend: $36,000 + $24,000 + $18,000 + $9,000 = **$87,000** - Total paid SQMs: 40 + 25 + 0 + 12 = **77**; total SQOs: 18 + 8 + 0 + 5 = **31** - Total paid pipeline: $720,000 + $96,000 + $0 + $60,000 = **$876,000** - Blended cost per SQM: $87,000 ÷ 77 = **$1,129.87** - Blended cost per SQO: $87,000 ÷ 31 = **$2,806.45** - Blended SQM→SQO rate: 31 ÷ 77 = **40.3%** - Blended pipeline per dollar: $876,000 ÷ $87,000 = **$10.07** **paid_social:** It had $18,000 spend and zero SQMs, so cost per SQM is undefined—not zero. Cost per SQO is also undefined because it had zero SQOs. ### Organic channels | Channel | Volume (SQMs/contacts) | SQOs | SQO rate | Pipeline | |---|---:|---:|---:|---:| | organic_search | 30 | 10 | 33.3% | $90,000 | | referral | 15 | 6 | 40.0% | $48,000 | | **Total organic** | **45** | **16** | **35.6%** | **$138,000** | Arithmetic: organic volume = 30 + 15 = **45**; SQOs = 10 + 6 = **16**; rate = 16 ÷ 45 = **35.6%**; pipeline = $90,000 + $48,000 = **$138,000**. Spend was not supplied for these organic channels, so pipeline per dollar is not calculated. ### SQO dates before SQM dates - `CT-000044` — linkedin_ads: SQM 2026-07-23; SQO 2026-07-18; pipeline $12,000. - `CT-000041` — linkedin_ads: SQM 2026-06-14; SQO 2026-06-09; pipeline $12,000. Both are included in the reported figures. Excluding them would change linkedin_ads to 6 SQOs and $72,000 pipeline, but the supplied data does not establish whether they should be excluded. ### Reallocation recommendation Favor **paid_search** for incremental paid budget: it generated $720,000 pipeline on $36,000 spend ($20.00 pipeline per dollar), versus $4.00 for linkedin_ads and $6.67 for webinars. Keep **paid_social** paused or at zero until it produces SQMs; its spend yielded none in these rows. Treat this as a measured test, not a definitive budget shift: paid_search has 40 SQMs / 18 SQOs, linkedin_ads 25 / 8 (including two date-anomaly rows), and webinars 12 / 5. **Confidence: moderate-low**—paid_search leads by a substantial observed margin, but channel sample sizes are limited and attribution-date anomalies affect LinkedIn. Organic results are useful context, but no organic spend was provided for a cost comparison.
One-line positioning Rivally is a points-based recognition product with an engaging recognition feed; evidence also indicates limited or basic analytics. (S02, S07, S16) Pricing Latest source: Recognition Starter is listed at $7 per user/month with annual billing required (pricing page, 2026-08-12). (S17) Conflict: earlier pricing pages listed $5 per user/month on 2026-01-20 and still showed $5 for Starter on 2026-04-01. The newer page supersedes those figures. (S03, S08, S17) A 500-seat prospect was quoted $6.50 per user/month on 2026-06-02; on 2026-08-14, a prospect reported a $7 list quote and a 15% discount for a three-year term. These are deal-specific quotes, not the current public list price. (S13, S18) Where they win - Setup and Slack: a mid-market reviewer said setup took under a week and Slack worked out of the box. (S04) - EU needs: a reviewer praised multi-language support for distributed EU teams; Rivally announced EU data residency generally available and opened a Dublin office. (S12, S15) - Engagement and support: reviewers praised the recognition feed and support response time under four hours. (S02, S16, S22) Where we win - Analytics: reviewers described Rivally’s analytics as limited or its dashboards as basic; an 800-seat prospect chose Bonusly over Rivally citing analytics depth. (S02, S07, S25) - Admin workflows: reviewers reported missing SCIM provisioning, painful manual user management, lagging admin tooling, and no bulk recognition editing. (S10, S16, S24) Objections and responses - “Rivally is stronger for EU teams.” Acknowledge the evidence: reviewers praised multi-language support, and Rivally announced EU data residency availability. Then establish whether those are requirements and compare them against the buyer’s analytics needs. (S12, S15) - “Rivally is easy to deploy and integrates with Slack.” Acknowledge the reviewer report of setup under a week and Slack working out of the box; don’t claim Rivally lacks Slack. (S04) - “Rivally is cheaper.” Confirm the plan, billing, and contract term before comparing: the latest page lists $7/user/month with annual billing, and one prospect reported a 15% discount for a three-year term. (S17, S18) - “We need strong analytics.” Ask which reporting and export needs matter; point to reviewer reports of limited/basic analytics and the 800-seat prospect’s stated reason for choosing Bonusly. (S02, S07, S25) Recent changes - 2026-09-01: Rivally Pulse exited beta and is priced as an add-on, not bundled. (S23) - 2026-08-20: Microsoft Teams app v2 entered public preview. (S19) - 2026-08-12: Recognition Starter pricing page updated to $7/user/month, annual billing required. (S17) - 2026-07-01: Dublin office opened; EU data residency announced generally available. (S15) - 2026-05-09: Rivally hired an ex-Workday VP EMEA to lead European expansion. (S11) - 2026-03-05: Rivally Pulse launched as a lightweight engagement survey add-on. (S06) Our 12-month win/loss record against Rivally Using the provided deal records from 2025-09 through 2026-08: 13 wins and 7 losses across 20 deals; 13 + 7 = 20, and 13 ÷ 20 = 65% wins (7 ÷ 20 = 35% losses). The records include no September 2026 deals. (Wins: Deal-A9FD43, Deal-7AA785, Deal-44C524, Deal-0D0CD6, Deal-D5B790, Deal-5C636E, Deal-67BE14, Deal-1B6969, Deal-F03E7B, Deal-072E31, Deal-F65C8F, Deal-E46EAB, Deal-1D2392; losses: Deal-7767F5, Deal-5645A5, Deal-C6FFAA, Deal-D263E0, Deal-935746, Deal-9066A6, Deal-72A02F.) (deals_with_competitor.csv) Old-card claims not re-sourced - “Acquired by WorkHuman in 2025”: unverified; no supporting snippet provided. - “Lacks a Slack integration”: contradicted by the reviewer report that Slack worked out of the box. (S04) - “Strong in EU enterprise with multi-language support”: partially supported for distributed EU teams and multi-language support, but the supplied snippet does not establish the broader “enterprise” claim. (S12) - “Starts at $5/user/month”: outdated against the newer pricing-page source. (S03, S08, S17)
Rates = total opens, replies, or meetings ÷ total sent across steps. Counts are step-summed, not unique contacts. - New Logo Nurture — sent: 1,386 (500+458+428); open: 35.35% (490/1,386); reply: 6.49% (90/1,386); meeting: 1.95% (27/1,386). Weakest: step 3 (18/428 replies, 6/428 meetings). Change: make step 3’s CTA a specific meeting ask. - Expansion Nurture — sent: 875 (300+300+275); open: 64.57% (565/875; unreliable—see tracking error); reply: 6.74% (59/875); meeting: 1.37% (12/875). Weakest: step 3 (12/275 replies, 3/275 meetings). Change: revise step 3’s message/CTA. - Cold Outbound - HR Leaders — sent: 1,785 (600+595+590); open: 30.53% (545/1,785); reply: 0.45% (8/1,785); meeting: 0% (0/1,785). Weakest: step 3 (1/590 replies; no meetings at any step). Change: replace step 3’s follow-up with a new, value-led angle. - Cold Outbound - People Ops — sent: 1,163 (400+386+377); open: 29.23% (340/1,163); reply: 2.49% (29/1,163); meeting: 0.52% (6/1,163). Weakest: step 3 (6/377 replies, 1/377 meetings). Change: use a fresh angle in step 3 rather than another follow-up. Tracking error: Expansion Nurture step 2 reports 340 opens / 300 sent = 113.33%, so its sequence open rate is not reliable. Audience overlap: New Logo Nurture ↔ Expansion Nurture: CT-000301, CT-000624. Cold Outbound - HR Leaders ↔ Cold Outbound - People Ops: CT-000849, CT-000884, CT-000890, CT-000908, CT-001033, CT-001097, CT-001101, CT-001103, CT-001105, CT-001130, CT-001153, CT-001159, CT-001217, CT-001227, CT-001236, CT-001255, CT-001258, CT-001285, CT-001311, CT-001345. Under 2% reply: Cold Outbound - HR Leaders overall (0.45%); replies are very low despite 30.53% opens, with zero meetings. Cold Outbound - People Ops step 3 is also below 2% (1.59%), amid declining opens and replies across steps. Fix first: Cold Outbound - HR Leaders—it has the lowest sequence reply rate and no meetings.
Q3-2026 is 66 of 92 days elapsed: 66 ÷ 92 = 71.7% of the quarter. For count and pipeline targets, pace compares QTD actuals with target × 66 ÷ 92. Delta is actual minus full-quarter target. | Metric | QTD actual | Target | Delta | Pace | |---|---:|---:|---:|---| | SQMs | 230 | 300 | −70 | Ahead: 230 vs 300 × 66 ÷ 92 = 215.2 expected by now | | SQOs | 84 | 120 | −36 | Behind: 84 vs 86.1 expected by now | | DS2s | 40 | 75 | −35 | Behind: 40 vs 53.8 expected by now | | Closed-lost MIA rate | 5 ÷ 25 = 20% | 10% | +10 percentage points, unfavorable | Behind: 20% exceeds the 10% maximum | | Same-quarter closes | 10 | 20 | −10 | Behind: 10 vs 14.3 expected by now | | Active pipeline | $3,000,000 | $4,000,000 | −$1,000,000 | Ahead: $3,000,000 vs $2,869,565 expected by now; 75% of target | This week’s movement can’t be determined from the provided data: it contains QTD totals but no prior-week snapshot or weekly activity. Current QTD position is ahead of straight-line pace for SQMs and active pipeline, and behind for SQOs, DS2s, same-quarter closes, and the closed-lost MIA rate.
Treat the $115,977 Q3 forecast as unvalidated, not reliable: 44,729 COMMIT + 35% × 203,565 BEST_CASE = 115,976.75, with PIPELINE weighted at 0, across 54/86 in-quarter deals. Another 32 deals totaling 227,575 close after Sep 30, including COMMIT Deal-D348E1 at 13,770 on Oct 15. Owner is blank on 85/86 deals and why-buys on 71/86, including all 7 in-quarter COMMIT deals; 32 October close dates, several still DS2/DS3 within four weeks of quarter-end, may reflect date-pushing rather than requalification.
Subject: Following up on the July 28 demo Hi, I’m following up on the July 28 demo, where the People team asked for pricing for 150 seats. I sent a recap with pricing on August 5. Would you let me know if you’ve had a chance to review it? Best, Alex
Marketing: The team delivered 46 SQMs against a target of 52 (46 ÷ 52 = 88.5% of target; 52 − 46 = 6 below target). Webinar brought in 18 SQMs, while paid-search cost per SQM held at $150. Sales: The team converted 14 SQOs, set 9 DS2 meetings, created $310,000 in new pipeline, and recorded 3 same-quarter closes this week. CS: The team saved 2 renewals, reached a team NPS of 61, and has 3 open red-flag accounts heading into next week. PLG: PLG added 412 signups, with activation at 31%. A total of 38 companies reached the aha moment of 10 recognition gives.
Partner digest — 2026-08-24 to 2026-09-04 - Apex Rewards Co — Co-webinar locked for 09-15. 2 sourced deals, both DS1: Deal-DDAAF2 ($180,000) + Deal-2CF33E ($95,000) = $275,000. - HRCloud Partners — 1 sourced deal moved to DS2: Deal-F1CDA5 ($140,000). - CultureBridge — 2 sourced deals, both early stage: Deal-096E1D ($60,000) + Deal-067213 ($75,000) = $135,000. - WorkWell Group — No sourced deals this period. Joint playbook restart planned for Q4; planning call booked for 09-09. - Recogniq — Quiet; no activity or deal data provided. - KudosWave — Quiet; no activity or deal data provided. - PeopleFirst Advisors — Quiet; no activity or deal data provided. - TotalPerk — Quiet; no activity or deal data provided. Partner-sourced pipeline: 5 deals (2 + 1 + 2) totaling $550,000 ($275,000 + $140,000 + $135,000).
Q1: Yes. Customer data is encrypted at rest using AES-256. [P1] Q2: Yes. Data in transit is encrypted with TLS 1.2 or higher. [P1] Q3: Yes. Bonusly maintains a SOC 2 Type II report, renewed annually. Prospects can obtain it under NDA. [P2] Q4: Customer data is retained for 90 days after the contract ends, then deleted from production systems. [P3] Q5: The current subprocessor list is published at trust.bonusly.com. Customers receive 30 days’ notice before a new subprocessor is added. [P4] Q6: Yes. SAML 2.0 single sign-on is available on the Enterprise plan. [P5] Q7: Production databases are backed up daily. Backups are encrypted and retained for 35 days. [P6] Q8: Unanswerable from the provided excerpts. The ISO 27001 certificate or certification statement would answer this. Q9: Unanswerable from the provided excerpts. The contractual uptime SLA or service-level agreement would answer this. Q10: Unanswerable from the provided excerpts. The HIPAA Business Associate Agreement policy or contract terms would answer this.
1. Trigger overlap: `comms-drafter` and `email-drafter` — WARNING · REVIEW Both trigger on “write me an email,” “draft a follow-up,” “help me reply,” “what should I say,” and email review or rewrite requests. Proposal: clarify which skill owns email-specific requests and route general external communications separately. 2. Trigger overlap: `pipeline-intelligence-report` and `weekly-pipeline-report` — WARNING · REVIEW Both trigger on pipeline reports/updates and “what does pipeline look like.” Proposal: make the full scored pipeline report and the weekly performance update triggers mutually distinct. 3. Circular delegation: `deal-strategy-coach` → `email-drafter` → `deal-strategy-coach` — WARNING · UPDATE_BODY `deal-strategy-coach` directs manager-to-prospect emails to `email-drafter`; `email-drafter` sends strategy and coaching requests back to `deal-strategy-coach`. Proposal: specify a one-way handoff for drafting versus strategy, without routing the same request back. 4. Delegation targets missing from the supplied manifest and files — WARNING · UPDATE_BODY Referenced targets not present in the supplied inventory: `bonusly-brand`, `prospect-research-multithreading`, `bonusly-data-questions`, `bonusly-product-questions`, `bonusly-business-reporting-questions`, `bonusly-rewards-questions`, `bonusly-ppp-questions`, `bonusly-feature-flag-questions`, `bonusly-deal-desk-questions`, `bonusly-datadog-questions`, and `signalforge-reports`. Proposal: verify these targets exist in the intended skill inventory or replace the references. 5. Version conflict: `sales-forecast` — WARNING · UPDATE_BODY Its v1.1 changelog says the skill is quarter-agnostic, but the body still says “Open Q2 Deals,” specifies a “Q2 Narrative,” and includes fixed Q2 2026 context. Retain v1.1 and update the conflicting body references. 6. Manifest description lengths — INFO · REVIEW 0 of 14 descriptions exceed 1,024 characters. Maximum: 1,006 characters. Proposal: none; no description trimming is indicated by this threshold. 7. Hardcoded page IDs, dates, and person names — WARNING · UPDATE_BODY Page IDs include `2257879045` (`deal-strategy-coach`); `2286616609`, `2286321666`, `2265382925`, `2236940297`, `2237825028`, `2239365136`, `2238283777` (`partner-digest`); `2295136266`, `2234417154`, `2247295002` (`signalforge-feedback`); and `2232582148` (`sales-forecast`). Bodies also contain fixed dates and periods, including “May 9, 2026” (`analysis-validator`), “May 16, 2026” (`partner-digest`), and “Q2 2026” (`weekly-pipeline-report`, `sales-forecast`). Hardcoded person names include Amani Phipps and Ben Castelli (`partner-digest`), Alaina Loori (`sales-forecast`, `deal-strategy-coach`), and Bryce Harmon, Dana Mercer, Cole Ingram, Alex Franklin, and Gavin Porter (`pipeline-intelligence-report`). Proposal: review these literals for intended fixed references versus values that should be current or resolved dynamically. 8. Manifest drift — INFO · REVIEW Within the supplied inventory, all 14 manifest rows have a corresponding supplied skill file, and all 14 supplied skill files have a manifest row. Files without rows: none. Rows without files: none. Proposal: none for the supplied set.
1. Acknowledge the alert and take incident command — Bryce Harmon [M01].
Command/action: Acknowledged the PagerDuty alert and took IC; no command documented.
Success verification: Not documented — needs confirmation.
Rollback: Not documented — needs confirmation.
2. Check reward queue depth — Farid Osman [M02].
Command: `bundle exec rake sidekiq:queue_depth`
Result: 48,213 pending jobs; normal is under 500.
Success verification: The command returned the reported queue depth.
Rollback: Not applicable; this was a check.
3. Inspect the dead set — Farid Osman [M03].
Command: Not documented — needs confirmation.
Result: 112 jobs, all `Redis::TimeoutError` from around 13:58.
Success verification: Reported inspection result; the inspection method is not documented — needs confirmation.
Rollback: Not applicable; this was an inspection.
4. Pause enqueue — Farid Osman [M04].
Command: `bin/rails runner 'FeatureFlag.disable(:auto_recognition_enqueue)'`
Success verification: No direct verification of the flag state is documented — needs confirmation.
Rollback: `bin/rails runner 'FeatureFlag.enable(:auto_recognition_enqueue)'`
5. Clear the dead set — Elena Sinclair [M05].
Command/action: Elena reported clearing the dead set in the console; exact command/action is not documented — needs confirmation.
Success verification: Not documented — needs confirmation.
Rollback: Not documented — needs confirmation.
6. Scale reward workers from 3 to 6 — Bryce Harmon [M06].
Command: `kubectl scale deployment/reward-worker --replicas=6`
Success verification: No direct replica-count verification is documented — needs confirmation. The later queue observations [M07, M08] do not independently verify the replica count.
Rollback: `kubectl scale deployment/reward-worker --replicas=3`
7. Observe queue depth — Farid Osman [M07].
Command/action: Measurement command is not documented — needs confirmation.
Result: Queue depth was 9,400 and falling approximately 1,200/min.
Success verification: Reported queue observation.
Rollback: Not applicable; this was an observation.
8. Verify queue and error rate — Cole Ingram [M08].
Command: `bundle exec rake sidekiq:queue_depth`
Result: 0; Datadog error rate was back to baseline.
Success verification: The command returned 0, and Cole reported the error rate back at baseline.
Rollback: Not applicable; this was a verification.
9. Re-enable enqueue — Bryce Harmon [M09].
Command: `bin/rails runner 'FeatureFlag.enable(:auto_recognition_enqueue)'`
Success verification: 40 new jobs processed cleanly in the next 3 minutes.
Rollback: Not documented — needs confirmation.
10. Scale workers back down to 3 — Bryce Harmon [M10].
Command: `kubectl scale deployment/reward-worker --replicas=3`
Success verification: Queue was stable at 0; Bryce reported the incident resolved. Direct verification of the replica count is not documented — needs confirmation.
Rollback: Not documented — needs confirmation.
First error — 2026-09-03 14:01:12 UTC: `reward-service` logged `Redis::TimeoutError` connecting to `redis-primary:6379`, timed out after 5s. Cascade, in timestamp order: 1. `reward-service` logged `retry exhausted for RewardGiveJob` at 14:01:20, 14:01:30, and 14:01:40. 2. `sidekiq` logged `RewardGiveJob failed: Redis::TimeoutError; retrying` at 14:01:40 and again at 14:02:28. The job records show `RewardGiveJob` failures starting at 14:01:46; `RecognitionDigestJob` failures appear from 14:02:36. 3. `sidekiq` warned that the reward queue was above 10,000 at 14:02:30. 4. `api-gateway` began logging 502 upstream timeouts calling `reward-service` at 14:03:05; `web-app` logged Give form submission failures from 14:03:30. Both errors continued in the slice. 5. Recovery signals: `reward-service` logged Redis restored at 14:22:10; `sidekiq` logged queue depth below 500 at 14:24:45. Service and job: the first logged failure is in `reward-service`; the explicitly failing job is `RewardGiveJob`, with `RecognitionDigestJob` also recorded failing on Redis timeouts. Datadog query: `service:reward-service "Redis::TimeoutError"` with the time picker set to 2026-09-03 14:01:00–14:02:00 UTC. The logs do not show why Redis timed out, Redis-side logs or health, the precise outage start, whether failed jobs later completed, or the full customer impact. They also do not link individual log lines to the job IDs in `sidekiq_jobs.csv`.
| Flag | State / control per code | Targets and rule | |---|---|---| | `recognition_streaks_v2` | On — records a recognition streak when enabled. | `segment:beta_companies`; 42 companies | | `points_budget_guardrails` | On — enforces the points budget for a company. | `all_companies`; 220 companies | | `slack_dm_nudges` | On — sends a Slack DM nudge. | `segment:region_na`; 87 companies | | `redeem_flow_redesign` | Off — selects the V2 redemption component when enabled; otherwise uses V1. | `targeted_list`; 12 companies | | `analytics_dashboard_v3` | On — initializes the V3 analytics dashboard. | `segment:tier_three`; 65 companies | | `ms_teams_app_v2` | Off — installs Teams App V2 when enabled. | `targeted_list`; 9 companies | | `legacy_give_modal` | Off — no code reference provided. | `segment:legacy_plan`; 14 companies | | `survey_boosters_q3` | On — no code reference provided. | `segment:legacy_plan`; 7 companies | | `paused_offboard_cleanup` | Off — no code reference provided. | No targeting rule or targets; 0 companies | No company aliases are included in the provided data, so individual companies cannot be named. Export counts: on = 42 + 220 + 87 + 65 + 7 = 421; off = 12 + 9 + 14 + 0 = 35; total = 421 + 35 = 456.
NDA-1 — GREEN: Standard mutual confidentiality, three-year survival, customary carve-outs, and Delaware law; driven by “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: Counsel review for the embedded 18-month employee non-solicit/hire restriction: “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: Full legal review for one-way confidentiality with no stated carve-outs, a broad three-year non-compete, five-year term, and Ireland’s exclusive jurisdiction; the key clause is “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.”