{"id":"ec76e921-ea09-46e3-99af-2a521d0336c0","shortId":"pR7CY5","kind":"skill","title":"crm-sales-momentum","tagline":"Analyze HubSpot pipeline momentum — deal velocity, stage conversions, win/loss patterns, and stall detection","description":"# CRM Sales Momentum Drivers\n\nAnalyze what is driving or stalling pipeline momentum in your HubSpot CRM. Measures deal velocity, stage conversion rates, time-in-stage, and win/loss patterns by segment. Surfaces the deal characteristics that predict wins versus losses and identifies stuck deals.\n\n**Requires:** Cogny Agent subscription ($9/mo) — [Sign up](https://cogny.com/agent)\n\n**Tip:** Run `/crm-icp-analysis` first to establish your ICP baseline, then use this skill to see how ICP-fit deals move through pipeline compared to non-fit deals.\n\n## Usage\n\n`/crm-sales-momentum` — full momentum analysis\n`/crm-sales-momentum velocity` — deal velocity and stage timing only\n`/crm-sales-momentum stalls` — stuck deal detection only\n`/crm-sales-momentum segments` — win/loss patterns by segment only\n\n## Prerequisites Check\n\nCall `mcp__cogny__hubspot__get_user_details` to verify CRM access. Confirm read access to contacts, companies, and deals. If access is missing:\n\n```\nThis skill requires HubSpot CRM access via Cogny's MCP server.\nSign up at https://cogny.com/agent and connect your HubSpot account.\n```\n\n## Steps\n\n### 1. Discover pipeline structure\n\nGet deal stage properties to understand the pipeline:\n\n```\nhubspot__get_properties(objectType: \"deals\", propertyNames: [\"dealstage\", \"pipeline\"])\n```\n\nIdentify:\n- All pipeline stages and their order (from the `dealstage` property enum values)\n- Pipeline names (if multiple pipelines exist)\n- Custom deal properties relevant to segmentation\n\nUse `search_properties` to find stage-timing properties:\n\n```\nhubspot__search_properties(objectType: \"deals\", keywords: [\"hs_date_entered\", \"hs_time_in\"])\n```\n\nAlso fetch owner list for rep-level analysis:\n\n```\nhubspot__search_owners()\n```\n\n### 2. Pull deal data across all stages\n\nFetch deals created in the last 90 days plus recently closed:\n\n```\nhubspot__search_crm_objects(\n  objectType: \"deals\",\n  filterGroups: [{\"filters\": [{\"propertyName\": \"createdate\", \"operator\": \"GTE\", \"value\": \"<90 days ago timestamp>\"}]}],\n  properties: [\"dealname\", \"dealstage\", \"amount\", \"createdate\", \"closedate\", \"pipeline\", \"hubspot_owner_id\", \"hs_analytics_source\", \"dealtype\", <stage timing properties from step 1>],\n  sorts: [{\"propertyName\": \"createdate\", \"direction\": \"DESCENDING\"}],\n  limit: 200\n)\n```\n\nCheck `total` count and paginate if needed to capture full dataset.\n\n### 3. Deal velocity analysis\n\nCalculate velocity metrics across the pipeline:\n\n- **Overall velocity**: average days from deal creation to close (won and lost separately)\n- **Stage-by-stage velocity**: average time in each stage\n- **Stage conversion rates**: % of deals that advance from each stage to the next\n- **Drop-off stages**: stages with the highest loss rate\n- **Velocity trend**: compare last 30 days vs previous 30 days\n\nBuild a pipeline flow visualization:\n\n```\nPipeline Flow (last 90 days):\n[Stage 1] ──85%──> [Stage 2] ──62%──> [Stage 3] ──48%──> [Stage 4] ──71%──> [Closed Won]\n  100 deals           85 deals          53 deals          25 deals         18 deals\n  avg 4 days          avg 7 days        avg 12 days       avg 5 days\n                       ↓ 15%             ↓ 38%             ↓ 52%           ↓ 29%\n                    [Lost: 15]        [Lost: 32]        [Lost: 28]       [Lost: 7]\n```\n\nFlag:\n- Stages where >40% of deals stall or are lost\n- Stages with average time >2x the overall stage average\n- Conversion rate drops of >10% compared to previous period\n\n### 4. Stuck deal detection\n\nIdentify deals that are stalled based on time-in-stage analysis.\n\nFor each pipeline stage, calculate:\n- Median time-in-stage for deals that eventually advanced\n- Standard deviation of time-in-stage\n- **Stall threshold**: median + 1.5x standard deviation\n\nFlag deals currently in a stage beyond the stall threshold:\n\n```\nhubspot__search_crm_objects(\n  objectType: \"deals\",\n  filterGroups: [{\"filters\": [\n    {\"propertyName\": \"dealstage\", \"operator\": \"EQ\", \"value\": \"<stage>\"},\n    {\"propertyName\": \"hs_date_entered_<stage>\", \"operator\": \"LT\", \"value\": \"<stall threshold date>\"}\n  ]}],\n  properties: [\"dealname\", \"amount\", \"hubspot_owner_id\", \"hs_date_entered_<stage>\"],\n  limit: 50\n)\n```\n\nFor each stuck deal, fetch associated company and contacts to add context about why it might be stalled.\n\n### 5. Win/loss pattern analysis by segment\n\nSegment closed deals along multiple dimensions and compare win rates:\n\n**By Deal Size:**\n- Bucket deals into tiers and compare win rate per tier\n- Identify the deal size range with highest win rate\n\n**By Lead Source:**\n- Win rate by `hs_analytics_source` (organic, paid, referral, direct, etc.)\n- Average deal size by source\n- Average sales cycle by source\n\n**By Owner (Sales Rep):**\n- Win rate per rep\n- Average deal velocity per rep\n- Average deal size per rep\n- Identify top performers and what they do differently\n\n**By Company Segment** (fetch associated companies):\n- Win rate by industry\n- Win rate by company size\n- Win rate by geography\n\n**By Deal Age at Stage:**\n- Deals that spend <X days in each stage: win rate\n- Deals that spend >X days: win rate\n- Identify the \"golden window\" — the time-in-stage range that correlates with wins\n\n### 6. Momentum scoring\n\nScore overall pipeline momentum:\n\n```\nPipeline Momentum Score: X/100\n\nVelocity:        X/25\n  [FAST/NORMAL/SLOW] Average cycle [N] days\n  [UP/DOWN/FLAT] Velocity trend: [X]% change vs prior period\n\nFlow Rate:       X/25\n  [STRONG/MODERATE/WEAK] Stage conversion rates\n  [IMPROVING/DECLINING/STABLE] Conversion trend\n  Drop-off stage: [stage name] ([X]% loss rate)\n\nPipeline Health:  X/25\n  [HEALTHY/AT_RISK/CRITICAL] [N] deals stuck ([X]% of active pipeline)\n  [GROWING/SHRINKING/STABLE] Pipeline value: $[X] ([X]% change)\n  Coverage ratio: [X]x ([pipeline value] / [target])\n\nPredictability:  X/25\n  [HIGH/MEDIUM/LOW] Win rate consistency: [X]% +/- [Y]%\n  [CLEAR/MIXED/UNCLEAR] Segment patterns identified\n  [STRONG/WEAK] Leading indicators reliability\n```\n\n### 7. Output momentum report\n\n```\nCRM Sales Momentum Analysis\nPeriod: Last 90 days\nDeals analyzed: [N] ([N] won, [N] lost, [N] active)\nPipeline value: $[X]\n\n═══════════════════════════════════════════════════\nMOMENTUM SCORE: X/100\n═══════════════════════════════════════════════════\n\nPipeline Flow:\n[Stage-by-stage flow diagram from Step 3]\n\nKey Velocity Metrics:\n  Average Sales Cycle (Won):   [N] days\n  Average Sales Cycle (Lost):  [N] days\n  Fastest Close:               [N] days ([deal name])\n  Slowest Win:                 [N] days ([deal name])\n\nStage Health:\n┌──────────────────┬──────────┬───────────┬──────────┬─────────────┐\n│ Stage            │ Deals In │ Avg Days  │ Conv Rate│ Stuck Deals │\n├──────────────────┼──────────┼───────────┼──────────┼─────────────┤\n│ [Stage 1]        │ [N]      │ [N]       │ [X]%     │ [N]         │\n│ [Stage 2]        │ [N]      │ [N]       │ [X]%     │ [N]         │\n│ [Stage 3]        │ [N]      │ [N]       │ [X]%     │ [N]         │\n│ [Stage 4]        │ [N]      │ [N]       │ [X]%     │ [N]         │\n└──────────────────┴──────────┴───────────┴──────────┴─────────────┘\n\nWin Predictors (what separates wins from losses):\n1. [Predictor]: deals with [X] win at [Y]% vs [Z]% without\n2. [Predictor]: deals with [X] win at [Y]% vs [Z]% without\n3. [Predictor]: deals with [X] win at [Y]% vs [Z]% without\n\nStuck Deals Requiring Attention:\n┌──────────────────┬──────────┬──────────┬──────────┬─────────────────┐\n│ Deal             │ Amount   │ Stage    │ Days In  │ Owner           │\n├──────────────────┼──────────┼──────────┼──────────┼─────────────────┤\n│ [Deal 1]         │ $[X]     │ [Stage]  │ [N]      │ [Rep]           │\n│ [Deal 2]         │ $[X]     │ [Stage]  │ [N]      │ [Rep]           │\n└──────────────────┴──────────┴──────────┴──────────┴─────────────────┘\n\nRep Performance:\n┌──────────────────┬──────────┬───────────┬──────────┬─────────────┐\n│ Rep              │ Win Rate │ Avg Cycle │ Avg Deal │ Pipeline $  │\n├──────────────────┼──────────┼───────────┼──────────┼─────────────┤\n│ [Rep 1]          │ [X]%     │ [N] days  │ $[X]     │ $[X]        │\n│ [Rep 2]          │ [X]%     │ [N] days  │ $[X]     │ $[X]        │\n└──────────────────┴──────────┴───────────┴──────────┴─────────────┘\n\nTop 3 Actions:\n1. [Highest-impact momentum fix]\n2. [Second highest]\n3. [Third highest]\n```\n\n### 8. Record findings\n\nFor EVERY actionable momentum insight, call `mcp__cogny__create_finding`:\n\n```json\n{\n  \"title\": \"38% of deals stall at Proposal stage — avg 18 days vs 7-day benchmark\",\n  \"body\": \"32 of 85 deals entering the Proposal stage in the last 90 days have stalled or been lost. Median time-in-stage for deals that advance is 7 days, but stalled deals average 18 days. Common pattern: deals without a second contact (single-threaded) stall at 2.1x the rate. 12 deals currently stuck in Proposal worth $340K total. Recommend: implement multi-threading requirement before Proposal stage, add 10-day stall alert.\",\n  \"action_type\": \"pipeline_optimization\",\n  \"expected_outcome\": \"Reduce Proposal stage stall rate from 38% to <20%\",\n  \"estimated_impact_usd\": 8000,\n  \"priority\": \"high\"\n}\n```\n\nAction types for sales momentum:\n- `pipeline_optimization` — stage process changes, stall interventions\n- `deal_acceleration` — specific actions to unstick individual deals\n- `rep_coaching` — rep-specific performance improvements\n- `forecasting_improvement` — pipeline coverage, predictability fixes\n- `lead_source_optimization` — invest in sources that produce faster-closing deals\n- `disqualification_rule` — patterns that predict losses, filter early","tags":["crm","sales","momentum","claude","code","marketing","skills","cognyai","agent-skills","ai-agents","claude-code","claude-skills"],"capabilities":["skill","source-cognyai","skill-crm-sales-momentum","topic-agent-skills","topic-ai-agents","topic-claude-code","topic-claude-skills","topic-cluade-mcp","topic-cursor","topic-geo","topic-growth-hacking","topic-llm","topic-marketing","topic-mcp","topic-seo"],"categories":["claude-code-marketing-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/cognyai/claude-code-marketing-skills/crm-sales-momentum","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add cognyai/claude-code-marketing-skills","source_repo":"https://github.com/cognyai/claude-code-marketing-skills","install_from":"skills.sh"}},"qualityScore":"0.471","qualityRationale":"deterministic score 0.47 from registry signals: · indexed on github topic:agent-skills · 42 github stars · SKILL.md body (9,539 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-01T06:56:25.909Z","embedding":null,"createdAt":"2026-04-18T22:23:31.308Z","updatedAt":"2026-05-01T06:56:25.909Z","lastSeenAt":"2026-05-01T06:56:25.909Z","tsv":"'/agent':168 '/agent)':71 '/crm-icp-analysis':74 '/crm-sales-momentum':102,106,114,120 '1':175,397,871,901,945,967,983 '1.5':513 '10':467,1096 '100':410 '12':427,1077 '15':432,437 '18':418,1018,1059 '2':253,400,877,912,951,974,989 '2.1':1073 '20':1114 '200':308 '25':416 '28':441 '29':435 '2x':458 '3':320,403,831,883,923,981,992 '30':380,384 '32':439,1025 '340k':1084 '38':433,1010,1112 '4':406,421,472,889 '40':447 '48':404 '5':430,576 '50':557 '52':434 '53':414 '6':709 '62':401 '7':424,443,794,1021,1053 '71':407 '8':995 '8000':1118 '85':398,412,1027 '9/mo':66 '90':266,284,394,804,1036 'acceler':1134 'access':139,142,149,157 'account':173 'across':257,327 'action':982,1000,1100,1121,1136 'activ':763,814 'add':568,1095 'advanc':359,502,1051 'age':685 'agent':64 'ago':286 'alert':1099 'along':585 'also':241 'amount':291,549,939 'analysi':105,249,323,487,579,801 'analyt':299,621 'analyz':5,22,807 'associ':563,668 'attent':937 'averag':332,348,456,462,628,633,646,651,723,835,841,1058 'avg':420,423,426,429,864,961,963,1017 'base':481 'baselin':80 'benchmark':1023 'beyond':523 'bodi':1024 'bucket':595 'build':386 'calcul':324,492 'call':129,1003 'captur':317 'chang':731,770,1130 'characterist':52 'check':128,309 'clear/mixed/unclear':786 'close':270,338,408,583,848,1164 'closed':293 'coach':1142 'cogni':63,131,159,1005 'cogny.com':70,167 'cogny.com/agent':166 'cogny.com/agent)':69 'common':1061 'compani':145,564,665,669,677 'compar':95,378,468,589,600 'confirm':140 'connect':170 'consist':783 'contact':144,566,1067 'context':569 'conv':866 'convers':12,38,354,463,740,743 'correl':706 'count':311 'coverag':771,1151 'creat':262,1006 'created':280,292,304 'creation':336 'crm':2,18,33,138,156,273,529,798 'crm-sales-momentum':1 'current':519,1079 'custom':214 'cycl':635,724,837,843,962 'data':256 'dataset':319 'date':236,542,554 'day':267,285,333,381,385,395,422,425,428,431,692,726,805,840,846,850,856,865,941,970,977,1019,1022,1037,1054,1060,1097 'deal':9,35,51,61,91,100,108,117,147,180,191,215,233,255,261,276,321,335,357,411,413,415,417,419,449,474,477,499,518,532,561,584,593,596,607,629,647,652,684,688,759,806,851,857,862,869,903,914,925,935,938,944,950,964,1012,1028,1049,1057,1063,1078,1133,1140,1165 'dealnam':289,548 'dealstag':193,204,290,536 'dealtyp':301 'descend':306 'detail':135 'detect':17,118,475 'deviat':504,516 'diagram':828 'differ':663 'dimens':587 'direct':305,626 'discov':176 'disqualif':1166 'drive':25 'driver':21 'drop':367,465,746 'drop-off':366,745 'earli':1173 'enter':237,543,555,1029 'enum':206 'eq':538 'establish':77 'estim':1115 'etc':627 'eventu':501 'everi':999 'exist':213 'expect':1104 'fast/normal/slow':722 'faster':1163 'faster-clos':1162 'fastest':847 'fetch':242,260,562,667 'filter':278,534,1172 'filtergroup':277,533 'find':224,997,1007 'first':75 'fit':90,99 'fix':988,1153 'flag':444,517 'flow':389,392,735,822,827 'forecast':1148 'full':103,318 'geographi':682 'get':133,179,188 'golden':697 'growing/shrinking/stable':765 'gte':282 'health':755,860 'healthy/at_risk/critical':757 'high':1120 'high/medium/low':780 'highest':373,611,985,991,994 'highest-impact':984 'hs':235,238,298,541,553,620 'hubspot':6,32,132,155,172,187,229,250,271,295,527,550 'icp':79,89 'icp-fit':88 'id':297,552 'identifi':59,195,476,605,656,695,789 'impact':986,1116 'implement':1087 'improv':1147,1149 'improving/declining/stable':742 'indic':792 'individu':1139 'industri':673 'insight':1002 'intervent':1132 'invest':1157 'json':1008 'key':832 'keyword':234 'last':265,379,393,803,1035 'lead':615,791,1154 'level':248 'limit':307,556 'list':244 'loss':57,374,752,900,1171 'lost':341,436,438,440,442,453,812,844,1042 'lt':545 'mcp':130,161,1004 'measur':34 'median':493,512,1043 'metric':326,834 'might':573 'miss':151 'momentum':4,8,20,29,104,710,715,717,796,800,818,987,1001,1125 'move':92 'multi':1089 'multi-thread':1088 'multipl':211,586 'n':725,758,808,809,811,813,839,845,849,855,872,873,875,878,879,881,884,885,887,890,891,893,948,954,969,976 'name':209,750,852,858 'need':315 'next':365 'non':98 'non-fit':97 'object':274,530 'objecttyp':190,232,275,531 'oper':281,537,544 'optim':1103,1127,1156 'order':201 'organ':623 'outcom':1105 'output':795 'overal':330,460,713 'owner':243,252,296,551,639,943 'pagin':313 'paid':624 'pattern':14,46,123,578,788,1062,1168 'per':603,644,649,654 'perform':658,957,1146 'period':471,734,802 'pipelin':7,28,94,177,186,194,197,208,212,294,329,388,391,490,714,716,754,764,766,775,815,821,965,1102,1126,1150 'plus':268 'predict':54,778,1152,1170 'predictor':895,902,913,924 'prerequisit':127 'previous':383,470 'prior':733 'prioriti':1119 'process':1129 'produc':1161 'properti':182,189,205,216,222,228,231,288,547 'propertynam':192,279,303,535,540 'propos':1015,1031,1082,1093,1107 'pull':254 'rang':609,704 'rate':39,355,375,464,591,602,613,618,643,671,675,680,694,736,741,753,782,867,960,1076,1110 'ratio':772 'read':141 'recent':269 'recommend':1086 'record':996 'reduc':1106 'referr':625 'relev':217 'reliabl':793 'rep':247,641,645,650,655,949,955,956,958,966,973,1141,1144 'rep-level':246 'rep-specif':1143 'report':797 'requir':62,154,936,1091 'rule':1167 'run':73 'sale':3,19,634,640,799,836,842,1124 'score':711,712,718,819 'search':221,230,251,272,528 'second':990,1066 'see':86 'segment':48,121,125,219,581,582,666,787 'separ':342,897 'server':162 'sign':67,163 'singl':1069 'single-thread':1068 'size':594,608,630,653,678 'skill':84,153 'skill-crm-sales-momentum' 'slowest':853 'sort':302 'sourc':300,616,622,632,637,1155,1159 'source-cognyai' 'specif':1135,1145 'spend':690 'stage':11,37,43,111,181,198,226,259,344,346,352,353,362,369,370,396,399,402,405,445,454,461,486,491,497,509,522,687,703,739,748,749,824,826,859,861,870,876,882,888,940,947,953,1016,1032,1047,1094,1108,1128 'stage-by-stag':343,823 'stage-tim':225 'stall':16,27,115,450,480,510,525,575,1013,1039,1056,1071,1098,1109,1131 'standard':503,515 'step':174,830 'strong/moderate/weak':738 'strong/weak':790 'structur':178 'stuck':60,116,473,560,760,868,934,1080 'subscript':65 'surfac':49 'target':777 'third':993 'thread':1070,1090 'threshold':511,526 'tier':598,604 'time':41,112,227,239,349,457,484,495,507,701,1045 'time-in-stag':40,483,494,506,700,1044 'timestamp':287 'tip':72 'titl':1009 'top':657,980 'topic-agent-skills' 'topic-ai-agents' 'topic-claude-code' 'topic-claude-skills' 'topic-cluade-mcp' 'topic-cursor' 'topic-geo' 'topic-growth-hacking' 'topic-llm' 'topic-marketing' 'topic-mcp' 'topic-seo' 'total':310,1085 'trend':377,729,744 'type':1101,1122 'understand':184 'unstick':1138 'up/down/flat':727 'usag':101 'usd':1117 'use':82,220 'user':134 'valu':207,283,539,546,767,776,816 'veloc':10,36,107,109,322,325,331,347,376,648,720,728,833 'verifi':137 'versus':56 'via':158 'visual':390 'vs':382,732,909,920,931,1020 'win':55,590,601,612,617,642,670,674,679,693,708,781,854,894,898,906,917,928,959 'win/loss':13,45,122,577 'window':698 'without':911,922,933,1064 'won':339,409,810,838 'worth':1083 'x':514,691,730,751,761,768,769,773,774,784,817,874,880,886,892,905,916,927,946,952,968,971,972,975,978,979,1074 'x/100':719,820 'x/25':721,737,756,779 'y':785,908,919,930 'z':910,921,932","prices":[{"id":"6bb491ae-7444-4f90-9108-b4e8d0c81ce9","listingId":"ec76e921-ea09-46e3-99af-2a521d0336c0","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"cognyai","category":"claude-code-marketing-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T22:23:31.308Z"}],"sources":[{"listingId":"ec76e921-ea09-46e3-99af-2a521d0336c0","source":"github","sourceId":"cognyai/claude-code-marketing-skills/crm-sales-momentum","sourceUrl":"https://github.com/cognyai/claude-code-marketing-skills/tree/main/skills/crm-sales-momentum","isPrimary":false,"firstSeenAt":"2026-04-18T22:23:31.308Z","lastSeenAt":"2026-05-01T06:56:25.909Z"}],"details":{"listingId":"ec76e921-ea09-46e3-99af-2a521d0336c0","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"cognyai","slug":"crm-sales-momentum","github":{"repo":"cognyai/claude-code-marketing-skills","stars":42,"topics":["agent-skills","ai-agents","claude-code","claude-skills","cluade-mcp","cursor","geo","growth-hacking","llm","marketing","mcp","seo","vibe","windsurf"],"license":null,"html_url":"https://github.com/cognyai/claude-code-marketing-skills","pushed_at":"2026-04-29T13:43:50Z","description":"Marketing skills for Claude Code — SEO audits and implementation, ad analysis, ad optimization. Free skills need no account. $9/mo for live Search Console, Bing & LinkedIn data.","skill_md_sha":"797a099b5596e7388a37d9affaa052ee062a0906","skill_md_path":"skills/crm-sales-momentum/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/cognyai/claude-code-marketing-skills/tree/main/skills/crm-sales-momentum"},"layout":"multi","source":"github","category":"claude-code-marketing-skills","frontmatter":{"name":"crm-sales-momentum","description":"Analyze HubSpot pipeline momentum — deal velocity, stage conversions, win/loss patterns, and stall detection"},"skills_sh_url":"https://skills.sh/cognyai/claude-code-marketing-skills/crm-sales-momentum"},"updatedAt":"2026-05-01T06:56:25.909Z"}}