[{"data":1,"prerenderedAt":218},["ShallowReactive",2],{"/en/workflows/dirty-signal-decision-coach":3},{"id":4,"slug":5,"locale":6,"translationGroupId":7,"localeSwitchApproved":8,"title":9,"description":10,"documentationMarkdown":11,"workflowJson":12,"category":200,"tags":201,"integrations":202,"difficulty":205,"author":206,"verified":35,"featured":35,"date":207,"modified":207,"icon":7,"imageSrc":7,"path":208,"alternates":209,"seo":210},"c15f8c26-0312-451e-a8f9-8e4ea45aaad3","dirty-signal-decision-coach","en",null,true,"Dirty Signal Decision Coach","An interactive decision assistant that helps teams quickly test branch numbers for trustworthiness, spot dirty signals before meetings, and choose when to rely on automation vs human judgment.","## How it works\nThis workflow turns messy branch signals (numbers, conversations, and event logs) into decision-ready next steps—without pretending the data is cleaner than it is. It starts by applying your Knowledge Base guidance, then offers a simple menu that routes people to the right “trust check” playbook.\n\nIt’s designed for the moment right before someone says, “Looks good—let’s do it.” That’s exactly when bad data behaves like good data. This flow helps teams slow down just enough to avoid confident wrong decisions, while still keeping momentum.\n\n## Key features\n- Knowledge Base policy applied before routing so answers stay aligned with your internal definitions and guardrails.\n- Button-driven menu that routes users into concrete, decision-shaped checks (trust, dirty signal, automation vs judgment, comparisons, culture).\n- Practical “what to verify next” prompts that focus on common failure modes (timing shifts, attribution leakage, conversation bias).\n- Loop-back design: after each coaching response, users can pick another check without restarting.\n- Human handoff option for high-stakes or ambiguous cases.\n\n## Step-by-step\n1. **Trigger:** The workflow starts when a user opens the flow (Input).\n2. **Apply Knowledge Base policy:** Calypso activates your Knowledge Base guidance to keep definitions consistent (e.g., what counts as a branch event, what “conversion” means).\n3. **Choose a decision check:** An interactive button menu asks what the user is trying to decide.\n4. **Route based on selection:** A chain of IF nodes matches the button clicked and sends the user to the relevant guidance.\n5. **Deliver the coaching prompt:** A text message provides specific checks and “don’t-get-fooled” tips.\n6. **Continue or escalate:** After reading, the user is returned to the menu to run another check—or can choose **Talk to a human** to hand off.\n\n## Setup requirements\n- **Calypso Knowledge Base:** Recommended. Add/maintain entries for your metric definitions, branch event taxonomy, attribution rules, and known data caveats.\n- **Messaging channel:** This template is designed for an interactive messaging channel (e.g., **WhatsApp Business**) enabled in Calypso.\n- **Credentials:** No additional credentials are required inside this workflow beyond your existing Calypso channel and Knowledge Base access.",{"id":13,"teamId":14,"name":9,"version":15,"workflowVersion":16,"nodes":17,"connections":166,"routingEnabled":8,"active":35},"wf_dirty_signal_decision_coach_v1","calypso-public-library","1.0.0",1,[18,36,42,54,85,94,103,108,114,120,126,132,138,144,150,156],{"id":19,"name":20,"type":21,"typeVersion":16,"position":22,"parameters":25,"category":34,"deletable":35,"connectable":35},"node_flow_configs","Flow settings","flow-configs",[23,24],80,60,{"name":9,"description":26,"tags":27,"triggerType":33},"Interactive decision checks for branch signals: trust tests, dirty-signal spotting, automation vs judgment, comparisons, and signal culture.",[28,29,30,31,32],"signal-quality","branch-metrics","decision-systems","data-hygiene","attribution","input","policy",false,{"id":37,"name":38,"type":33,"typeVersion":16,"position":39,"parameters":41,"category":33,"deletable":35,"connectable":8},"node_input","Incoming message",[23,40],200,{},{"id":43,"name":44,"type":45,"typeVersion":16,"position":46,"parameters":48,"category":53,"deletable":8,"connectable":8},"node_kb_policy","Knowledge Base guardrails","knowledge-base-policy",[47,40],320,{"enabled":8,"fallbackToRouting":8,"sticky":35,"stickyMode":49,"activationOpener":50,"personalization":52},"default",{"enabled":8,"instruction":51},"Use our internal metric definitions and branch event taxonomy. When evidence is ambiguous, ask one clarifying question before suggesting action. Prefer practical checks over theory.",{"useContactName":8},"response",{"id":55,"name":56,"type":57,"typeVersion":16,"position":58,"parameters":60,"category":53,"deletable":8,"connectable":8},"node_menu","Decision check menu","interactive-message",[59,40],580,{"messageType":61,"headerText":62,"bodyText":63,"footerText":64,"sectionTitle":65,"buttons":66,"ctaDisplayText":65,"ctaUrl":65},"button","Decision checks","Pick what you’re trying to decide. I’ll help you pressure-test the signal *before* it walks into a confident meeting wearing a suit.\n\nWhat do you need right now?","High stakes? Talk to a human.","",[67,70,73,76,79,82],{"id":68,"title":69},"trust_numbers","Trust these numbers",{"id":71,"title":72},"dirty_signal","Spot dirty signals",{"id":74,"title":75},"automation_judgment","Auto vs judgment",{"id":77,"title":78},"compare_branches","Compare branches",{"id":80,"title":81},"signal_culture","Signal culture",{"id":83,"title":84},"human_help","Talk to a human",{"id":86,"name":87,"type":88,"typeVersion":16,"position":89,"parameters":91,"category":93,"deletable":8,"connectable":8},"node_if_trust_numbers","If: trust numbers","if",[90,40],820,{"buttonId":68,"operator":92},"equals","routing",{"id":95,"name":96,"type":97,"typeVersion":16,"position":98,"parameters":101,"category":53,"deletable":8,"connectable":8},"node_text_trust_numbers","Trust check: numbers","text-message",[99,100],1060,120,{"text":102},"Here’s how to tell *decision-worthy* branch numbers from polished noise:\n\n1) **Definition stability:** Did the metric definition change (even “just a tag rename”)? If yes, treat the trend as a story, not evidence.\n2) **Timing sanity:** Is this number sensitive to cutoffs (end-of-day batching, late posts, delayed events)? If yes, compare *aligned windows*, not calendar dates.\n3) **Denominator truth:** If you’re looking at a rate, ask: *who got counted out?* Shrinking denominators can manufacture “improvement.”\n4) **Operational plausibility:** Does the change match what actually happened in the branch (staffing, hours, outage, promotion)? If it can’t be explained operationally, it’s usually tracking.\n5) **Replication:** One branch spike is entertainment. The same pattern across multiple branches or weeks is evidence.\n\nIf you want: reply with the metric + timeframe + branch count, and I’ll suggest the quickest verification step.",{"id":104,"name":105,"type":88,"typeVersion":16,"position":106,"parameters":107,"category":93,"deletable":8,"connectable":8},"node_if_dirty_signal","If: dirty signal",[90,47],{"buttonId":71,"operator":92},{"id":109,"name":110,"type":97,"typeVersion":16,"position":111,"parameters":112,"category":53,"deletable":8,"connectable":8},"node_text_dirty_signal","Dirty signal: fast checks",[99,47],{"text":113},"Dirty signal usually looks *clean* until it hits a slide deck. Run these fast checks:\n\n- **The “too smooth” test:** Perfectly monotonic charts often mean smoothing, backfills, or a pipeline change.\n- **The “new zeros” test:** Sudden zeros (or missing categories) usually mean instrumentation dropped, not reality.\n- **The “one field to rule them all” test:** If a single ID field drives joins/attribution, check for duplicates, format drift, and late-arriving IDs.\n- **Conversation bias:** If insights come from chats/calls, ask: *who didn’t respond?* Silence is a segment.\n- **Source drift:** When a channel mix shifts, attribution models quietly change what ‘good’ looks like.\n\nMeeting-saving move: identify **one falsifiable check** (e.g., “does event X exist for 20 random cases?”) and run it before debating strategy.",{"id":115,"name":116,"type":88,"typeVersion":16,"position":117,"parameters":119,"category":93,"deletable":8,"connectable":8},"node_if_automation_judgment","If: automation vs judgment",[90,118],440,{"buttonId":74,"operator":92},{"id":121,"name":122,"type":97,"typeVersion":16,"position":123,"parameters":124,"category":53,"deletable":8,"connectable":8},"node_text_automation_judgment","Automation vs judgment",[99,118],{"text":125},"When to trust automation vs when you still need human judgment:\n\n**Trust automation more when:**\n- The decision is **reversible** (you can roll back quickly).\n- The signal is **well-instrumented** and definitions are stable.\n- You have **guardrails** (thresholds, anomaly alerts, hard stops).\n\n**Require human judgment when:**\n- The decision is **one-way** (pricing, policy, staffing cuts).\n- Incentives are strong (people will “help” the metric).\n- The signal depends on **context** (branch-level constraints, local promos, outages).\n- You’re extrapolating from **thin evidence** (small samples, short windows).\n\nPractical rule: let automation *recommend*, but make humans *own* the exceptions—especially when the cost of being wrong is asymmetric.",{"id":127,"name":128,"type":88,"typeVersion":16,"position":129,"parameters":131,"category":93,"deletable":8,"connectable":8},"node_if_compare_branches","If: compare branches",[90,130],560,{"buttonId":77,"operator":92},{"id":133,"name":134,"type":97,"typeVersion":16,"position":135,"parameters":136,"category":53,"deletable":8,"connectable":8},"node_text_compare_branches","Compare branches & attribution",[99,130],{"text":137},"Comparing branches is where teams accidentally compare *measurement systems* instead of performance. Common misreads:\n\n1) **Different exposure:** Footfall, hours, staffing, and local demand vary. Normalize what you can—or at least call it out.\n2) **Different tracking maturity:** A branch with better logging can look worse (more recorded failures) or better (more recorded wins). Either way, it’s not apples-to-apples.\n3) **Attribution leakage:** If “wins” get credited to the last touch, branches with more follow-ups can steal credit from the first-touch source.\n4) **Mix shift masquerading as improvement:** If product or customer mix changes, averages will lie politely.\n\nTwo quick fixes:\n- Compare **within-branch over time** before cross-branch rankings.\n- When you must rank, use **bands** (top/middle/bottom) and attach a ‘data confidence’ label.",{"id":139,"name":140,"type":88,"typeVersion":16,"position":141,"parameters":143,"category":93,"deletable":8,"connectable":8},"node_if_signal_culture","If: signal culture",[90,142],680,{"buttonId":80,"operator":92},{"id":145,"name":146,"type":97,"typeVersion":16,"position":147,"parameters":148,"category":53,"deletable":8,"connectable":8},"node_text_signal_culture","Build signal culture",[99,142],{"text":149},"A healthy signal culture isn’t “more dashboards.” It’s faster decisions with fewer surprises.\n\nWhat works in practice:\n- **Confidence labels:** Every key metric gets a simple confidence rating (High/Medium/Low) with a one-line reason.\n- **One owner per definition:** If everyone owns the metric, nobody owns the metric.\n- **Pre-mortems for metrics:** Ask: “How could this metric become misleading next month?” Write the top 3 failure modes.\n- **Decision logs:** Track what you decided, on what evidence, and what you expected to happen. This is how teams learn which signals deserve trust.\n- **Reward truth, not beauty:** Celebrate the person who finds the tracking bug *before* the quarterly review.\n\nIf you want, tell me the decision you’re making and the signals you’re using—I’ll suggest the smallest set of checks that keeps you honest.",{"id":151,"name":152,"type":88,"typeVersion":16,"position":153,"parameters":155,"category":93,"deletable":8,"connectable":8},"node_if_human_help","If: talk to a human",[90,154],800,{"buttonId":83,"operator":92},{"id":157,"name":158,"type":159,"typeVersion":16,"position":160,"parameters":161,"category":165,"deletable":8,"connectable":8},"node_fallback_handoff","Handoff to analyst","fallback",[99,90],{"handoffMessage":162,"departmentId":163,"departmentName":164},"Got it. I’m handing this to a human for a quick reality check. Please share: (1) the decision, (2) the key metric(s), (3) timeframe, (4) which branches, and (5) what changed recently (systems, staffing, promos).","dept_analytics_ops","Analytics Ops","terminal",[167,170,172,174,177,180,182,184,186,188,190,192,194,196,198],{"id":168,"source":37,"target":43,"sourceHandle":169,"targetHandle":169,"type":169},"conn_input_to_kb","main",{"id":171,"source":43,"target":55,"sourceHandle":169,"targetHandle":169,"type":169},"conn_kb_to_menu",{"id":173,"source":55,"target":86,"sourceHandle":169,"targetHandle":169,"type":169},"conn_menu_to_if1",{"id":175,"source":86,"target":95,"sourceHandle":176,"targetHandle":169,"type":169},"conn_if1_true_to_text","true",{"id":178,"source":86,"target":104,"sourceHandle":179,"targetHandle":169,"type":169},"conn_if1_false_to_if2","false",{"id":181,"source":104,"target":109,"sourceHandle":176,"targetHandle":169,"type":169},"conn_if2_true_to_text",{"id":183,"source":104,"target":115,"sourceHandle":179,"targetHandle":169,"type":169},"conn_if2_false_to_if3",{"id":185,"source":115,"target":121,"sourceHandle":176,"targetHandle":169,"type":169},"conn_if3_true_to_text",{"id":187,"source":115,"target":127,"sourceHandle":179,"targetHandle":169,"type":169},"conn_if3_false_to_if4",{"id":189,"source":127,"target":133,"sourceHandle":176,"targetHandle":169,"type":169},"conn_if4_true_to_text",{"id":191,"source":127,"target":139,"sourceHandle":179,"targetHandle":169,"type":169},"conn_if4_false_to_if5",{"id":193,"source":139,"target":145,"sourceHandle":176,"targetHandle":169,"type":169},"conn_if5_true_to_text",{"id":195,"source":139,"target":151,"sourceHandle":179,"targetHandle":169,"type":169},"conn_if5_false_to_if6",{"id":197,"source":151,"target":157,"sourceHandle":176,"targetHandle":169,"type":169},"conn_if6_true_to_handoff",{"id":199,"source":151,"target":157,"sourceHandle":179,"targetHandle":169,"type":169},"conn_if6_false_to_handoff_default","automation",[28,29,30,31,32],[203,204],"Calypso Knowledge Base","WhatsApp Business","intermediate","Calypso","2026-04-24T11:04:16.453Z","/en/workflows/dirty-signal-decision-coach",{"en":208},{"title":9,"description":211,"ogDescription":212,"twitterDescription":213,"canonicalPath":208,"robots":214,"schemaType":215,"alternates":216},"Interactive checks to trust branch numbers, spot dirty signals early, and decide when automation is enough—or when to escalate to a human.","Stop polished noise from driving decisions. Run quick checks on branch numbers, dirty signals, attribution, and when to trust automation vs judgment.","A decision coach for messy branch signals: trust checks, dirty signal spotting, attribution comparisons, and clear moments to escalate to a human.","index,follow","HowTo",[217],{"hreflang":6,"href":208},1778614431998]