<script data-pm-proxy="intercept"></script><?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[AI Analyst Lab]]></title><description><![CDATA[We reveal the secrets to a thriving data career, providing insights, emerging trends, and an insider's view of how data and AI transform our profession]]></description><link>https://dataneighbor.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!jx46!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe650f36b-3659-4534-bc71-1a5b9a78c3da_800x800.png</url><title>AI Analyst Lab</title><link>https://dataneighbor.substack.com</link></image><generator>Substack</generator><lastBuildDate>Sat, 05 Sep 2026 03:35:56 GMT</lastBuildDate><atom:link href="/__u/dataneighbor.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Data Neighbor]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[hello@aianalystlab.ai]]></webMaster><itunes:owner><itunes:email><![CDATA[hello@aianalystlab.ai]]></itunes:email><itunes:name><![CDATA[Shane Butler]]></itunes:name></itunes:owner><itunes:author><![CDATA[Shane Butler]]></itunes:author><googleplay:owner><![CDATA[hello@aianalystlab.ai]]></googleplay:owner><googleplay:email><![CDATA[hello@aianalystlab.ai]]></googleplay:email><googleplay:author><![CDATA[Shane Butler]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Three lines turn a data finding into a decision]]></title><description><![CDATA[Most people write two of them, and the missing one is why nothing happens]]></description><link>https://dataneighbor.substack.com/p/turn-data-finding-into-a-decision</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/turn-data-finding-into-a-decision</guid><dc:creator><![CDATA[Hai Guan]]></dc:creator><pubDate>Mon, 10 Aug 2026 15:01:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!iu6t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!iu6t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!iu6t!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png 424w, /__u/substackcdn.com/image/fetch/$s_!iu6t!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png 848w, /__u/substackcdn.com/image/fetch/$s_!iu6t!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png 1272w, /__u/substackcdn.com/image/fetch/$s_!iu6t!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!iu6t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:98255,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/210550447?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!iu6t!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png 424w, /__u/substackcdn.com/image/fetch/$s_!iu6t!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png 848w, /__u/substackcdn.com/image/fetch/$s_!iu6t!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png 1272w, /__u/substackcdn.com/image/fetch/$s_!iu6t!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5379e5be-1310-453e-8c4f-0c9b8c332ea3_3200x1800.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>You sent the analysis: the number, the chart, a short note on top saying what you found. The reply from the stakeholder you sent to: &#8220;Interesting, thanks.&#8221;</p><p>Nothing followed - no question about method, no meeting, nobody asking what you&#8217;d do about it. A month later nobody&#8217;s put it on a roadmap or into a sprint. Bring it up and the person you sent it to needs to be reminded which analysis you mean.</p><p>They read the analysis. They just don&#8217;t know what to do with it.</p><p>I published something about this last September <a href="https://www.linkedin.com/feed/update/urn:li:activity:7373370011928870935/">on LinkedIn</a>, a thing I called the five levels of data insight. Think reporting at the bottom, prescribing actions at the top. Most teams, I wrote, sit at levels one and two and reach three occasionally, and the advice I gave was to keep asking &#8220;so what&#8221; until the finding connects to a business outcome.</p><p>I think that advice was tackling the wrong problem. &#8220;Keep asking so what&#8221; is a note about effort, as if the people who stop at level two stopped because they gave up trying. The reality is, they didn&#8217;t - they stopped because they needed guidance on what it really means.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!suB_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!suB_!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png 424w, /__u/substackcdn.com/image/fetch/$s_!suB_!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png 848w, /__u/substackcdn.com/image/fetch/$s_!suB_!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png 1272w, /__u/substackcdn.com/image/fetch/$s_!suB_!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!suB_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png" width="1456" height="1001" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1001,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:179081,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/210550447?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!suB_!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png 424w, /__u/substackcdn.com/image/fetch/$s_!suB_!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png 848w, /__u/substackcdn.com/image/fetch/$s_!suB_!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png 1272w, /__u/substackcdn.com/image/fetch/$s_!suB_!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff42d6fb6-b9d9-4685-bf73-294911b12031_3200x2200.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Assume your analysis was fine, the question was <a href="/__u/dataneighbor.substack.com/p/most-questions-arent-worth-answering">worth the effort to do</a> and a decision was waiting on the answer. You sent the number, the chart, and a recommendation tucked in at the bottom, hedged. The sentence that&#8217;s missing is one that helps the reader understand what that number costs or earns them and why they should care.</p><p>If you leave this out, you&#8217;re asking your reader to do that math, and most just won&#8217;t bother. They&#8217;ll just file the analysis in the &#8220;interesting&#8221; bucket, and your job is to make it as effortless as possible for them to understand why it&#8217;s much more than that.</p><p><strong>The solution:</strong> three lines, short enough to say out loud in fifteen seconds or drop into a Slack message.</p><ul><li><p><strong>Say what you found, and put a number in it</strong> - a rate, a gap, a count - so your reader can argue, debate, or ask questions about it instead of nodding passively.</p></li><li><p><strong>Translate it into money, users, or risk</strong>, the units the person across from you runs their business in so they never have to do that conversion themselves.</p></li><li><p><strong>Name the action and price it</strong> - what to fund or ship, what it costs in people and weeks, what you expect back. &#8220;We recommend further investigation&#8221; isn&#8217;t an ask.</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><p>Here&#8217;s the example I used back in September, filled in across all three. Daily active users down 15% last month. The drop sits entirely with Android users on older operating systems, churning at three times the normal rate since the v3.5 update, and the hypothesis is the new video engine choking on older hardware. Good finding. Investigated, explained, defensible.</p><p>Line two is the contextualization that turns it into a decision. That segment is 40% of the user base, which puts the quarterly revenue target at risk. Line three then follows naturally: roll the feature back for those users now, spend the next sprint on a backward-compatible version.</p><p>Nobody has to do arithmetic to see what 40% of the base means for the quarter. If the middle line is excluded, you&#8217;ll see how the roll-back turns from a grounded recommendation to an opinion. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!2EX6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!2EX6!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png 424w, /__u/substackcdn.com/image/fetch/$s_!2EX6!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png 848w, /__u/substackcdn.com/image/fetch/$s_!2EX6!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png 1272w, /__u/substackcdn.com/image/fetch/$s_!2EX6!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!2EX6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png" width="1456" height="1001" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1001,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:211085,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/210550447?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!2EX6!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png 424w, /__u/substackcdn.com/image/fetch/$s_!2EX6!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png 848w, /__u/substackcdn.com/image/fetch/$s_!2EX6!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png 1272w, /__u/substackcdn.com/image/fetch/$s_!2EX6!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb5bd7eb-eb1f-4419-b322-4fa484cd33f2_3200x2200.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If the middle line matters so much, why does everyone leave it out? Because it takes effort, business context, and extra mile to connect the dots.</p><p>Line two you start from scratch. To write it you have to convert your finding into the units your reader thinks in, and that could take things the analysis never told you. What is one percentage point of retention worth at this company? What does a week of engineering time cost? Which number does your CFO actually care about? What&#8217;s that additional slice or cut that provide more context to the numbers you&#8217;re seeing? None of that is in your data. It&#8217;s in the business, and you have to have been paying attention.</p><p><strong>Try this:</strong> Open the last analysis you sent that went nowhere. Don&#8217;t redo it. Write one sentence, in your reader&#8217;s units, saying what that number costs or earns them. See how that changes the strength of your recommendation.</p><p><strong>P.S.</strong> We have a free lesson this Wednesday, August 12, on AI open models and how to use them in your analysis. Sign up below.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/568b2d/open-models-101-what-are-they-and-how-to-use-them&quot;,&quot;text&quot;:&quot;Open Models 101&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/568b2d/open-models-101-what-are-they-and-how-to-use-them"><span>Open Models 101</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Both numbers were right. That was the problem.]]></title><description><![CDATA[Seven fields and one test.]]></description><link>https://dataneighbor.substack.com/p/both-numbers-were-right-that-was</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/both-numbers-were-right-that-was</guid><dc:creator><![CDATA[Hai Guan]]></dc:creator><pubDate>Thu, 30 Jul 2026 23:41:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!S3lR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!S3lR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!S3lR!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png 424w, /__u/substackcdn.com/image/fetch/$s_!S3lR!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png 848w, /__u/substackcdn.com/image/fetch/$s_!S3lR!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png 1272w, /__u/substackcdn.com/image/fetch/$s_!S3lR!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!S3lR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:104206,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/209188467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!S3lR!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png 424w, /__u/substackcdn.com/image/fetch/$s_!S3lR!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png 848w, /__u/substackcdn.com/image/fetch/$s_!S3lR!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png 1272w, /__u/substackcdn.com/image/fetch/$s_!S3lR!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84f1764-b5c8-43f9-812c-7999b0c880d5_3200x1800.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>You&#8217;re 20 minutes into a review when two people put the same metric on screen and the numbers don&#8217;t match. One counted distinct users with a completed order in the last 30 days; the other counted distinct users who placed an order in calendar September, and threw out guest checkouts. You spend 40 minutes working out why the two decks disagree, and neither definition breaks. Both hold up.</p><p>I&#8217;ve watched this play out many times, and what matters is where the decision goes. The review ends in confusion, nothing lands in the room, and three days later the VP makes the call in a hallway, with whichever person she trusts more. A real roadmap decision now rides on personal credibility instead of on the number.</p><p>It doesn&#8217;t stop at one meeting either. When two numbers collide, the room falls back on its default procedure, which ranks people rather than definitions, and that ranking holds. The same person wins the next one and the one after that, so a single undefined metric installs a permanent tiebreaker. </p><p>That room exists because weeks earlier, someone typed &#8220;users who buy something each month&#8221; into a Google Doc and called it a definition. Everyone had already agreed that <a href="/__u/dataneighbor.substack.com/p/most-questions-arent-worth-answering">monthly active buyers was the metric that mattered</a>, and agreeing on that felt like the hard part. It was not a definition. It was a sentence.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!POJM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!POJM!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png 424w, /__u/substackcdn.com/image/fetch/$s_!POJM!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png 848w, /__u/substackcdn.com/image/fetch/$s_!POJM!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png 1272w, /__u/substackcdn.com/image/fetch/$s_!POJM!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!POJM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png" width="1456" height="1019" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1019,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:283801,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/209188467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!POJM!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png 424w, /__u/substackcdn.com/image/fetch/$s_!POJM!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png 848w, /__u/substackcdn.com/image/fetch/$s_!POJM!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png 1272w, /__u/substackcdn.com/image/fetch/$s_!POJM!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f2170a7-50db-4fdc-af8f-0fc8ce448252_3200x2240.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>That sentence leaves four decisions open: what counts as a buy, at what grain, over what window, and who you throw out. Skip the writing, go straight to SQL or to an AI writing the SQL, and somebody still makes all four - the model just makes them for you, invisibly, on whatever it happens to grab. Anthropic <a href="https://claude.com/blog/how-anthropic-enables-self-service-data-analytics-with-claude">published its own numbers</a> here: running the same model, its analytics accuracy topped out at 21% without written business context and cleared 95% with it. Writing the context down did that.</p><p><a href="/__u/benn.substack.com/p/analytics-is-a-mess">Benn Stancil</a> put the objection better than I can: &#8220;There is no correct win rate waiting to be unearthed; one version isn&#8217;t true while another is false.&#8221; Picking a definition means making a judgment call about how you want to run the business. He&#8217;s right, and it changes what the writing is for. The fix is not one definition to rule them all, but several, each tied to the decision it serves and labeled for who it serves. Two definitions in that review meeting would have caused nobody any trouble if either one had carried its decision on its face, so write the choice down - a judgment call doesn&#8217;t survive in shared memory.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><p>So how do you know when the writing is done? Could two strangers, handed only your definition, independently compute the metric and land on the same answer? I call it the two-person test, and the word doing the work is independently. Take the number your board deck runs on, send the definition to two people separately, and ask each of them to compute it without talking to the other. If the second one peeks at the first one&#8217;s answer, or clears up an ambiguity over Slack, you&#8217;ve agreed on a number without ever testing the definition that produced it.</p><p>The test gives you a stopping rule: you stop when two people hand back the same number, and the decision stays inside the meeting instead of drifting into a hallway.</p><p>The version we teach has seven fields, and three of the four decisions that Google Doc sentence left open already live in here.</p><ul><li><p><strong>Name.</strong> Make it specific enough that nobody has to guess which number you mean, since monthly active buyers and monthly active users measure two different things.</p></li><li><p><strong>Numerator.</strong> Count distinct user IDs, not orders or sessions or dollars - and that one word, distinct, settles about half the disagreements in the room.</p></li><li><p><strong>Denominator.</strong> Decide what you count out of - everyone who visited, everyone who reached checkout, or everyone who was eligible in the first place - because those are three different rates off one numerator.</p></li><li><p><strong>Time window.</strong> Pick calendar month or trailing 30 days, because &#8220;last month&#8221; lets the two readings drift apart a little further every day the month runs.</p></li><li><p><strong>Inclusions.</strong> List what counts - which platforms, which product lines, whether members and non-members sit in the same number.</p></li><li><p><strong>Exclusions.</strong> Name what doesn&#8217;t - bots, internal test accounts, guest checkouts - and write &#8220;none&#8221; if it&#8217;s none, because a blank row reads as an oversight and the next person fills it in.</p></li><li><p><strong>Rationale.</strong> Say why you made these calls and not the other defensible ones. Every other field tells you how to compute the number; this one tells you why it looks the way it does.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!UCGX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!UCGX!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png 424w, /__u/substackcdn.com/image/fetch/$s_!UCGX!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png 848w, /__u/substackcdn.com/image/fetch/$s_!UCGX!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png 1272w, /__u/substackcdn.com/image/fetch/$s_!UCGX!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!UCGX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png" width="1456" height="1174" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1174,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:355188,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/209188467?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!UCGX!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png 424w, /__u/substackcdn.com/image/fetch/$s_!UCGX!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png 848w, /__u/substackcdn.com/image/fetch/$s_!UCGX!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png 1272w, /__u/substackcdn.com/image/fetch/$s_!UCGX!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae7e8f6a-9eff-43b8-ab74-adaa4fe5a04e_3200x2580.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The first four give the number its shape, and the last three decide what it means, because teams disagree over inclusions and exclusions, and rationale keeps a definition alive after the person who wrote it leaves. Teams skip rationale most often, even though the whole spec fits in a paragraph that one person writes before asking a question, not a review board convening.</p><p>We never ran this test on our own materials, and it cost us. Two students in our first cohort, working separately, found that our Week 3 capstone project defined checkout conversion three different ways - session-based, cart-based, and event-based - and we were the ones teaching this. Nobody inside caught it, and it surfaced only because two people outside the room happened to compute it separately, which is the test, run by accident.</p><p>The cheapest version of this starts at your next meeting, when someone cites an active user number and you <a href="/__u/dataneighbor.substack.com/p/frame-questions-that-drive-decisions">ask which definition</a>. Usually they stumble and reach for the one marketing uses, and when you ask which one that is, they don&#8217;t know. That&#8217;s the moment. And if you own the number yourself, run it the other way: write the definition down before anyone asks, then hand it to two people who weren&#8217;t in the room.</p><p>How many of your headline metrics carry more than one definition that nobody has reconciled?</p><p>Hit reply and tell me which one you&#8217;d least want to defend. And if you want to practice this with us, the next cohort of <a href="https://maven.com/dataneighbor/ai-analytics-for-builders?promoCode=SUBSTACK20">AI Analytics for Everyone</a> starts August 3 and works through metric specs directly - numerators, denominators, time windows, and the edge cases that turn out to be decisions you made by omission. That link takes 20% off with <strong>SUBSTACK20</strong>.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/dataneighbor/ai-analytics-for-builders?promoCode=SUBSTACK20&quot;,&quot;text&quot;:&quot;Join Us in the Next Cohort&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/dataneighbor/ai-analytics-for-builders?promoCode=SUBSTACK20"><span>Join Us in the Next Cohort</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[The chart was beautiful. The question was wrong]]></title><description><![CDATA[Four steps to take a vague ask to a sharp one - and about 60% don't survive the second]]></description><link>https://dataneighbor.substack.com/p/most-questions-arent-worth-answering</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/most-questions-arent-worth-answering</guid><dc:creator><![CDATA[Hai Guan]]></dc:creator><pubDate>Fri, 24 Jul 2026 21:27:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!DFTH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!DFTH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!DFTH!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png 424w, /__u/substackcdn.com/image/fetch/$s_!DFTH!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png 848w, /__u/substackcdn.com/image/fetch/$s_!DFTH!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png 1272w, /__u/substackcdn.com/image/fetch/$s_!DFTH!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!DFTH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:109650,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/208387179?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!DFTH!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png 424w, /__u/substackcdn.com/image/fetch/$s_!DFTH!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png 848w, /__u/substackcdn.com/image/fetch/$s_!DFTH!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png 1272w, /__u/substackcdn.com/image/fetch/$s_!DFTH!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ea353aa-5f36-4433-9662-097537cd440b_3200x1800.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It&#8217;s a Monday, and a message from your VP lands in Slack: &#8220;How&#8217;s our new membership doing? Leadership wants an update by Thursday.&#8221; You read it twice. It&#8217;s a reasonable ask - you get one like it every week - but it&#8217;s not really a question yet, just a direction to go look in.</p><p>The instinct is to go get it. You open the warehouse, or now, hand the whole thing to the AI and start pulling data - adoption, retention, a chart or two, something clean enough to paste into a deck. And you&#8217;ll get something back, which is the trap. A vague ask always gives you an output that looks like an answer, whether or not it answers anything.</p><p>So I&#8217;ve learned not to go get the answer - I sharpen the ask first. There are four steps between a vague request and a question that&#8217;s worth an hour - goal, decision, metric, hypothesis - and working through them kills as many questions as it sharpens. Let me walk through this one.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!UT2Y!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!UT2Y!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png 424w, /__u/substackcdn.com/image/fetch/$s_!UT2Y!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png 848w, /__u/substackcdn.com/image/fetch/$s_!UT2Y!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!UT2Y!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!UT2Y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png" width="1456" height="946" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:946,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:256110,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/208387179?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!UT2Y!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png 424w, /__u/substackcdn.com/image/fetch/$s_!UT2Y!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png 848w, /__u/substackcdn.com/image/fetch/$s_!UT2Y!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!UT2Y!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf990e0-5262-473c-98b2-c91e16b281f3_3200x2080.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p><em>The four steps from a vague ask to one worth an hour. The one everyone skips - decision - is the one that carries it.</em></p></blockquote><p>The first step is the goal: the outcome the leader actually cares about, which is never &#8220;an update.&#8221; An update is a deliverable. Nobody wants a deliverable - they want to know something, and &#8220;an update&#8221; is just the stand-in they reached for. Strip the ask down and the goal is usually simpler than the wording: they want to know whether the membership is still worth the company&#8217;s time. Name that, and the ask already looks different.</p><p>Then comes the step almost everyone skips, and it&#8217;s the one that carries the whole thing: the decision. The goal implies a fork - invest more in the membership, or move that effort somewhere it pays back faster - and no analysis is worth an hour unless a choice like that is waiting on it. So before I pull anything, I ask the one question that collapses most requests: what decision are you trying to drive with this?</p><p>About 60% of the time, asking that out loud makes the person realize there was no real decision underneath, and they tell me not to bother. That&#8217;s the whole point. Most of what this does is kill questions early, before they cost anyone an afternoon. It&#8217;s an easy step to skip, because the metric step feels like real work - numbers, a chart, something to show - and the decision step feels like a meeting with nothing to show for it. So people skip to the dashboard, and that&#8217;s how the ones nobody opens get built.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!5_YI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!5_YI!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png 424w, /__u/substackcdn.com/image/fetch/$s_!5_YI!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png 848w, /__u/substackcdn.com/image/fetch/$s_!5_YI!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!5_YI!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!5_YI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png" width="1456" height="946" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:946,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:267379,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/208387179?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!5_YI!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png 424w, /__u/substackcdn.com/image/fetch/$s_!5_YI!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png 848w, /__u/substackcdn.com/image/fetch/$s_!5_YI!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!5_YI!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76b48329-08c1-4f35-8389-fdce8f442755_3200x2080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p><em>Ask &#8220;what decision are you trying to drive?&#8221; and about 60% of requests don&#8217;t survive it. That&#8217;s the point.</em></p></blockquote><p>The usual pushback is some version of &#8220;I&#8217;m just exploring,&#8221; and that&#8217;s fair - not every look at the data hangs on a decision due this week. But most exploring is a decision in disguise, so I reframe instead of folding. &#8220;I&#8217;m just exploring user behavior&#8221; becomes &#8220;what patterns would change our next sprint&#8217;s priorities?&#8221;; &#8220;I&#8217;m just looking at the data&#8221; becomes &#8220;what would I need to see to recommend we invest in this?&#8221;; &#8220;I don&#8217;t have a decision yet&#8221; becomes &#8220;then what&#8217;s worth investigating further - and that&#8217;s your decision.&#8221; That step is what points everything after it.</p><p>Once a question clears the decision, the metric gets easier - and the word to watch out for is &#8220;engagement.&#8221; Engagement would have felt like an answer and settled nothing. Invest-or-redirect wants two real numbers instead. The first is adoption: of the members who could use the new thing, how many ever touched it. The second is the one people leave off - whether the members who used it stuck around, or spent more, than the ones who didn&#8217;t. Adoption on its own is a vanity metric. Retention is the number that tells you whether it mattered.</p><p>The last step is a hypothesis - a guess specific enough to be wrong. Mine, going in: adoption is low because the feature is buried three taps deep, and the handful who find it retain better than average. Now the pull has a shape. If I&#8217;m right, the fix is discovery, and the membership earns more investment. If I&#8217;m wrong, I find that out cheaply and move on. Either way I can be wrong about it out loud, and that&#8217;s what makes it worth effort.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!3ats!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!3ats!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png 424w, /__u/substackcdn.com/image/fetch/$s_!3ats!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png 848w, /__u/substackcdn.com/image/fetch/$s_!3ats!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!3ats!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!3ats!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png" width="1456" height="946" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:946,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:251823,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/208387179?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!3ats!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png 424w, /__u/substackcdn.com/image/fetch/$s_!3ats!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png 848w, /__u/substackcdn.com/image/fetch/$s_!3ats!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png 1272w, /__u/substackcdn.com/image/fetch/$s_!3ats!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f90cd8c-9986-4dcf-aa33-6a869036bf79_3200x2080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p><em>Same membership, same data. Thirty seconds of framing is the whole difference.</em></p></blockquote><p>This is the part the AI won&#8217;t do for you. Hand it the raw ask - &#8220;how&#8217;s the new membership doing?&#8221; - and it answers from right there, fluently, without doing any of the work first. And the fluency is the problem. A clean answer feels settled, and that feeling is what stops you from asking whether the question was any good in the first place. A good analyst who knew your company would push back. Now that the answer is basically free, getting to the right question is the hard part.</p><p>The pull is fast now. Anyone can get an answer in the time it takes to type the ask. What&#8217;s still slow is deciding whether the answer is worth having, and most of the time an honest look ends with you not pulling any data at all. That part is still yours.</p><p>If you&#8217;re curious about framework like this to sharpen your analytical thinking and foundation, join us at our next <a href="https://maven.com/dataneighbor/ai-analytics-for-builders">AI Analytics for Everyone</a> 5-week course where we help professionals become analytically independent while delegating execution to AI. </p><p>Or just hit reply and tell me the fuzziest ask sitting on your plate this week.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Are open-source models good enough for analytics?]]></title><description><![CDATA[The test was never whether they can write SQL - it's whether they can reason through the analytics loop, and the good open ones now can.]]></description><link>https://dataneighbor.substack.com/p/are-open-source-models-good-enough</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/are-open-source-models-good-enough</guid><dc:creator><![CDATA[Hai Guan]]></dc:creator><pubDate>Wed, 15 Jul 2026 14:02:26 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!VXc0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Your default for real analytics work is a frontier model. You point Claude Opus or GPT5.x at a question, it writes the SQL, you move on. But every few weeks someone posts that some open model is now just as good, and you wonder whether that&#8217;s true - or whether the gap that matters is still there the moment you point it at your actual data, the messy tables nobody remembers the columns for.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><p>For some of that data the question isn&#8217;t even optional. In healthcare, legal, or finance you legally can&#8217;t hand certain records to a frontier lab&#8217;s model, so &#8220;just use Claude&#8221; was never on the table for the work that matters most.</p><p>Not long ago that skepticism was fair - the open models really were a notch back, fine for a demo but not for work you&#8217;d put your name on.</p><p>That&#8217;s not what I found this year. We were running open models side by side with a frontier one on real analytics work, and they held up on the messy questions.</p><p>So I went back to what the job even is. In agentic analytics, you point a model at a question and it runs the whole loop - frames the question, explores the data, does the analysis, checks its own work, and tells you the story. The SQL is one step in the middle, and every model on this list can already do it well.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!qHv6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!qHv6!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png 424w, /__u/substackcdn.com/image/fetch/$s_!qHv6!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png 848w, /__u/substackcdn.com/image/fetch/$s_!qHv6!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png 1272w, /__u/substackcdn.com/image/fetch/$s_!qHv6!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!qHv6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png" width="1456" height="502" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:502,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:223536,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/207113662?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!qHv6!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png 424w, /__u/substackcdn.com/image/fetch/$s_!qHv6!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png 848w, /__u/substackcdn.com/image/fetch/$s_!qHv6!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png 1272w, /__u/substackcdn.com/image/fetch/$s_!qHv6!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ff59499-2fb6-43a0-9b1b-77d459184d3f_2918x1006.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The hard steps are the human ones. Somebody asks &#8220;how has retention changed?&#8221; - that could mean cohort retention, rolling retention, or churn rate, and a good analyst asks which before touching the data. I&#8217;ve watched a model hand back rolling retention when the client meant cohort - a clean answer to a question nobody asked. &#8220;Checkout conversion&#8221; has five defensible readings that land anywhere from 3% to 90% depending on what you count. Framing the fuzzy question, picking the right definition among several honest ones, reading the numbers back into a recommendation - that&#8217;s the reasoning the whole thing rests on. So the real question isn&#8217;t whether an open model can code. It&#8217;s whether it can reason through that loop and follow the rules for doing analytics well.</p><p>With that as the bar, a quick tour of the field.</p><ul><li><p>Qwen, from Alibaba, is the one everyone reaches for - Nathan Lambert&#8217;s read is that it&#8217;s overtaken Llama as the most-downloaded, most-fine-tuned open base, the default all-rounder, and it&#8217;s Apache 2.0, so you can build on it without a lawyer in the room. </p></li><li><p>DeepSeek is the reasoning-forward lab; its R1 release in early 2025 shook everyone&#8217;s assumption about how far ahead the frontier really was, and it&#8217;s MIT and cheap. </p></li><li><p>GLM, from z.ai, is the agentic, tool-native family that drops into Claude Code as a hosted substitute. </p></li><li><p>Kimi, from Moonshot AI, is the long-context, trillion-parameter one built for long multi-step runs. </p></li><li><p>Gemma, from Google, is the small, efficient one, now Apache 2.0. </p></li><li><p>And MiniMax is the cheap, efficient-MoE challenger.</p></li></ul><p>Here&#8217;s what surprised me. The good open models have already cleared the steps of the agentic analytics loop - framing, exploring, analyzing, checking, telling the story. They can all reason through that much well enough now. The step that still breaks is context, and that one was never a model problem. The model guesses at &#8220;retention&#8221; instead of asking, settles on one reading of &#8220;conversion,&#8221; and hands you a clean answer to a question you didn&#8217;t ask - and no bigger model fixes that. It&#8217;s the analyst&#8217;s job and a context-engineering job: write the definition down once, and the guessing stops. So which model you run matters less than whether you scoped the question.</p><p>The numbers back this up. Anthropic gave an agent grep access to thousands of prior SQL files and accuracy moved less than one percent. In a separate study, handing the model the database schema moved accuracy from 53.9 to 93.3 percent. Context is the forty-point lever. A bigger model barely moves the needle next to it.</p><p>I wanted to see this on my own data, not in a paper. About a month ago I ran the open models through a benchmark - the messy, real-shaped analytical questions we get. What it shows is narrow and enough: they clear the good-enough bar, so the model stops being the thing you worry about.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!VXc0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!VXc0!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png 424w, /__u/substackcdn.com/image/fetch/$s_!VXc0!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png 848w, /__u/substackcdn.com/image/fetch/$s_!VXc0!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png 1272w, /__u/substackcdn.com/image/fetch/$s_!VXc0!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!VXc0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png" width="1456" height="823" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:823,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:231093,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/207113662?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!VXc0!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png 424w, /__u/substackcdn.com/image/fetch/$s_!VXc0!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png 848w, /__u/substackcdn.com/image/fetch/$s_!VXc0!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png 1272w, /__u/substackcdn.com/image/fetch/$s_!VXc0!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd988ef98-d3ac-486f-a1e6-01383829c720_2017x1140.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>None of this means open has caught up across the board. The more times a job has to run the loop, the more the reliability tax compounds - a step that&#8217;s right 90 percent of the time is right about 59 percent over five steps, and the frontier labs still edge ahead on holding a long plan together. But that gap is closing very quickly to a point where it&#8217;s indistinguishable depending on the complexity of the analysis.</p><p>If you&#8217;d like to learn more about what open source models are, how they stack up on doing analysis, and how to run analysis through them yourself, join us in this free workshop: <a href="https://maven.com/p/568b2d/run-your-data-analysis-on-open-source-ai-models">https://maven.com/p/568b2d/run-your-data-analysis-on-open-source-ai-models</a></p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/p/are-open-source-models-good-enough?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/p/are-open-source-models-good-enough?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/p/are-open-source-models-good-enough?utm_source=substack&amp;utm_medium=email&amp;utm_content=share&amp;action=share"><span>Share</span></a></p></div><p></p>]]></content:encoded></item><item><title><![CDATA[Clone Yourself First]]></title><description><![CDATA[Before you build AI for customers, before you build a product, before you pitch your manager on an AI strategy: build an AI version of you. It's the highest-return investment you will make in AI.]]></description><link>https://dataneighbor.substack.com/p/clone-yourself-first</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/clone-yourself-first</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Mon, 02 Mar 2026 00:23:58 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jx46!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe650f36b-3659-4534-bc71-1a5b9a78c3da_800x800.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><strong>The Highest-ROI Thing You Can Do With AI</strong></h2><p>Most of the AI work I see right now is for other people. AI products for customers, AI workflows for teams, AI demos for boardrooms. They&#8217;re spending months on work that looks incredible in the meeting and falls apart the moment a real user touches it.</p><p>They&#8217;re starting in the wrong place.</p><p>Clone yourself first. Before you build for customers, before you build a product, before you pitch your manager on an AI strategy: build an AI version of you. Automate your own work. Replace yourself. It&#8217;s the highest-return investment you will make in AI, and it&#8217;s not close.</p><p>You can only control one person: you. You can&#8217;t make a customer use your product, you can&#8217;t make your team change how they work, and you can&#8217;t talk your boss into funding an experiment when they need deliverables. But you can decide, today, to do your own work through AI instead of by hand. That decision is entirely yours, which is exactly why it works.</p><div><hr></div><h2><strong>Time Is Not the Point. Cognitive Load Is.</strong></h2><p>You might read &#8220;clone yourself&#8221; and think this is about saving time. Getting your emails drafted, automating a report, managing your calendar. That stuff matters. It&#8217;s not the real prize.</p><p>The real scarcity in your life right now is not hours. It&#8217;s headspace. Every small obligation takes up cognitive territory. Updating a deck, answering a question about a number you already know, dragging a file into an email. A 30-second interruption doesn&#8217;t cost you 30 seconds. It costs you the thread of thought you were following before the ping arrived, the ten minutes it takes to find it again, and the growing chance that the next interruption hits before you do.</p><p>Clear that noise and you have something to invest: not just time to do things, but time to think about things. An hour every day processing ideas, talking through what you could build, where the opportunities are. You cannot get that hour if every available minute is consumed by tasks that could have been handled by something other than you.</p><p>Time is all you need.</p><p>Put that cleared space to work and it compounds fast. But that assumes you can build the thing that clears the space without burning months on it.</p><div><hr></div><h2><strong>You Don&#8217;t Need Evals. You&#8217;re the Fucking Eval.</strong></h2><p>The bottleneck isn&#8217;t building things. Building things is cheap. The bottleneck is knowing whether the output is any good.</p><p>This is where AI projects die. Someone builds a demo, leadership signs off, they scale it to real users, and it collapses. The person who built the demo was unconsciously doing the evaluation, testing against cases they understood. The moment it lands in someone else&#8217;s hands, the failure modes multiply faster than anyone can catalog them.</p><p>I think engineers automated first because they could close that loop instantly. They looked at the output and knew whether it was right. Look, know, done.</p><p>When I try to do this at my day job, building AI tools for lawyers, it&#8217;s a completely different experience. I&#8217;m not a lawyer, so every time the AI produces output I can&#8217;t just look at it and know. I have to get the output into a format a lawyer can assess, which takes iteration because I probably won&#8217;t nail the UI the first time, then the lawyer reviews it on their schedule, then I review their review to make sure they evaluated it properly, then I feed the corrections back in, and maybe the annotations from one lawyer are biased so now I need a representative sample, and every time the underlying system changes I run through all of it again. Seven friction points, minimum.</p><p>When you build for yourself, all of that collapses. You look at the output, you know if it&#8217;s right, you fix it. Done. No validation pipeline. No waiting on someone else&#8217;s calendar. Just you and your own judgment, moving as fast as your brain can process.</p><p>It costs you almost nothing. The only question left is where you find the time.</p><div><hr></div><h2><strong>The Byproduct Is the Work</strong></h2><p>When I tell people to automate themselves, they usually think they need to carve out time from their real work to build this AI thing. Ask their boss for two weeks to experiment, stay up late, squeeze in side projects on the weekend.</p><p>That&#8217;s not how it works. The byproduct of building the clone IS the work output. The best way to build an AI analyst is to do the analysis. You&#8217;re not doing something extra. You&#8217;re doing the exact same work you were going to do anyway, through AI instead of by hand.</p><p>What&#8217;s on your plate this week? What did your boss ask for by Friday? Do those things. Just do them with AI. Your five deliverables this sprint are your training data, your eval set, the thing you build the clone on. The first task might take the same amount of time, maybe more because you&#8217;re setting up scaffolding. The second one is already faster. By the end of two weeks, if you had five things to get done, you&#8217;re going to deliver 20, because every task teaches the system something that carries forward into the next one and the next one and the next one. That&#8217;s the whole damn point. You&#8217;re not taking time off from your work. You&#8217;re doing your work.</p><p>Your boss gave you five things to deliver. You delivered twenty. Nobody complains about that. And it happens faster than you think.</p><div><hr></div><h2><strong>By Friday, You&#8217;re Faster</strong></h2><p>I&#8217;ll make the progression concrete.</p><p>Week one. You connect the AI to your actual data sources, the messy ones you work with every day. You run it on a report you were already going to produce. You force it to write the SQL for every number and output those queries where you can see them. Then you check them manually. You can do this fast because you wrote similar queries yourself last month.</p><p>The first time is clumsy. You&#8217;re teaching it what your metrics mean, correcting column names, explaining business logic you&#8217;ve known for years but never had to put into words because no one else needed to hear it. In multiple cases when I did this, the AI corrected queries where I had been reporting the wrong metric for months. In other cases it chose the wrong column and got the number wrong, but I caught it immediately because I know this data. Nudge it, save the correction, it doesn&#8217;t make that mistake again. Look at the output, know if it&#8217;s right, correct it, move on.</p><p>By my third analysis I was moving faster than I would have been by hand. Every correction gets stored. Every pattern it learns reduces the surface area of things that can go wrong. The return curve bends upward and it bends fast.</p><p>Being 10 days ahead of someone is a long time now. Ten days of compounding in this environment puts you in a different operational reality than the person who hasn&#8217;t started. But you can catch up quick. Don&#8217;t be scared to start.</p><div><hr></div><h2><strong>The Person Who Can Replace Themselves Is Irreplaceable</strong></h2><p>The person who knows how to replace themselves is irreplaceable.</p><p>Three things happen once you&#8217;ve automated your own work, and they layer on top of each other.</p><p>First, the stuff you knew you had to do gets done in a fraction of the time. Your committed deliverables, your sprint goals, the reports leadership asked for. You haven&#8217;t changed what you deliver. You&#8217;ve changed how much of your life it costs.</p><p>Second, the stuff you always wanted to do but never had time for. That analysis you knew would be valuable but could never justify spending three weeks on, that process improvement you keep meaning to propose, the thing you&#8217;ve had in the back of your head for months that you never started because the urgent work always won. You have actual hours now. Not theoretical time. Real hours in your day that are no longer consumed by the work the clone handles.</p><p>Third, you start doing things you didn&#8217;t even know were possible. Problems you couldn&#8217;t see because you never had the bandwidth to look up from the work long enough to notice them. I started building systems to teach others the process. That wasn&#8217;t on any roadmap. It only became visible once the noise cleared.</p><p>That&#8217;s what&#8217;s happening to me right now. And it&#8217;s happening to people around me who started doing this. The most valuable person in the room isn&#8217;t the one doing the most. It&#8217;s the one who built the system and now sees what no one else can see.</p><div><hr></div><h2><strong>Just Start</strong></h2><p>Clone yourself first.</p><p>Tomorrow morning, take whatever is at the top of your to-do list. Do it through AI instead. Look at the output, correct it, do the next one. By Friday, you&#8217;ll be faster.</p><p>Time is all you need. You&#8217;re about to get a lot of it back.</p><p></p><h3><strong>Want to build an AI Analyst in Claude Code?</strong></h3><p>Join our weekend bootcamp on April 4-5. Eight hours, three instructors, leave with a working repo.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/dataneighbor/build-ai-analysts-in-claude-code&quot;,&quot;text&quot;:&quot;Join the Bootcamp&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/dataneighbor/build-ai-analysts-in-claude-code"><span>Join the Bootcamp</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[AI Already Does the Data Work. Here's What You Do Now.]]></title><description><![CDATA[Everything you think you know about your job is about to change. What comes next is better]]></description><link>https://dataneighbor.substack.com/p/ai-already-does-the-data-work-heres</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/ai-already-does-the-data-work-heres</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Mon, 23 Feb 2026 23:15:27 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jx46!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe650f36b-3659-4534-bc71-1a5b9a78c3da_800x800.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>&#8220;AI won&#8217;t replace the data scientist, but a data scientist who uses AI will replace the data scientist who doesn&#8217;t.&#8221;</p><p>You&#8217;ve heard this line. You&#8217;ve probably said it, at a conference, in a team meeting, maybe scrolling LinkedIn. It felt right. You could keep doing your job, add some AI for the boring parts, and the human work would stay yours. Business as usual, but shinier.</p><p>You could picture yourself in that future. It was comfortable.</p><p>Maybe that was true before. It&#8217;s not true anymore.</p><p>The models got good enough to do the whole job. Not just help with pieces of it. The whole thing, from question to finished deck, end to end. And it happened fast. Things that weren&#8217;t possible three months ago are possible today. What changed isn&#8217;t that AI got &#8220;a little better.&#8221; It crossed a line. The thing you do all day can be done by AI. Right now.</p><p>AI is going to replace the data analyst. It&#8217;s going to replace the analytics engineer. It&#8217;s going to replace the data scientist. Not &#8220;augment.&#8221; Not &#8220;change the way you work.&#8221; Replace.</p><p>Your job right now. Writing queries, building dashboards, answering the same segmentation question for the third time this quarter. That job is done.</p><p>The &#8220;augment, not replace&#8221; line is bullshit. It&#8217;s a comfortable story we told ourselves while the ground was shifting. I know because I told it to myself too, right up until I built the system that does my job better than I do.</p><p>I&#8217;ve been doing this for over a decade. I built an AI data analyst, tested it on the worst data I&#8217;ve ever worked with. It caught mistakes I had been making for months. Numbers I report to leadership. Numbers I&#8217;d been confident in.</p><p>It scared the shit out of me. I&#8217;m not writing this from a comfortable distance. More on that at the end.</p><p>What comes after the fear is something better. I&#8217;m on the other side of it. Stay with me.</p><p>Your current job is done. Your next job is more interesting.</p><div><hr></div><h2><strong>The Order of Falling</strong></h2><p>There&#8217;s an order to how this hits the data profession. The roles closest to coding fall first. Coding was the first thing AI got really good at.</p><p><strong>Software engineering falls first. It&#8217;s already fallen.</strong> Building pipelines, shipping applications, infrastructure. What used to require a development team now requires a conversation. And the people who made this happen? Coders, building the tools that automated their own work. They could validate the output because they knew what good code looked like. The expert builds the system that replaces them. Remember that pattern.</p><p><strong>Data analysts are next. It&#8217;s already here.</strong> The core loop of a data analyst is: take a question, explore data, find the answer, present it. AI can do every step of that right now.</p><p>Think about what covers 80-90% of the questions your data team fields: funnel analysis, segmentation, drivers and root-cause analysis, trend analysis, cohort analysis, opportunity sizing. If your daily work is on that list, the AI already does it.</p><p>A straightforward segmentation or funnel analysis that takes an analyst three days? The AI produces it in ten minutes. Prompt to finished deck. A complex deep-dive that takes three to four weeks? Forty minutes to an hour and a half.</p><p>Most of the work data teams do is pattern execution. Not because the people are bad. The patterns are just predictable. And predictable is exactly where AI is strongest.</p><p>The output competes with the strongest analysts I&#8217;ve worked with. The ones everyone goes to with the hard questions. I&#8217;m not running a study here. It&#8217;s what I&#8217;ve seen, and my boss who built his own version sees the same thing.</p><p><strong>Analytics engineering gets absorbed next.</strong> Nobody sees this one coming. Analytics engineering doesn&#8217;t get replaced by a separate AI system. It gets consumed as a side effect of the AI analyst getting smarter.</p><p>As the AI analyst runs analyses, it hits walls. It needs better data, cleaner tables, business context it can trust. So what does it do? It starts building the clean, documented semantic tables that analytics engineers spend months on. It stores its learnings and builds rules from its mistakes. This isn&#8217;t a prediction. It&#8217;s already started happening. I watched it happen. The AI analyst started building exactly the kind of semantic tables our analytics engineering team had been working on for months.</p><p>The critical business context trapped in people&#8217;s heads? The AI extracts it through conversation and puts it where anyone can use it.</p><p><strong>Data science is the last domino.</strong> Causal inference and experimental design require more sophisticated reasoning. It&#8217;s months behind, not years. If you&#8217;re a data scientist, the five paths below apply to you too. Especially Validator and Translator. Your training in experimental design makes you perfect for those.</p><p>You want a timeline? Watch the pace of frontier model releases. It&#8217;s not a date on a calendar. It&#8217;s a rate of acceleration most people haven&#8217;t internalized.</p><div><hr></div><h2><strong>The Proof</strong></h2><p>I built an AI data analyst in about a week by talking to it. Tens of thousands of lines of code, all generated through conversation. Not by writing code. By describing standards, correcting mistakes, teaching it what good analysis looks like. Then we tested it on real internal company data. Eleven years of bad data foundations at my company. The kind of data where people give up and just work around the problems.</p><p>I ran it against our North Star metrics. That&#8217;s where it got scary. Numbers I report to leadership. Numbers I&#8217;ve been working with for months. A query with 10+ CTEs, some with 15+ table joins. Everything tied out except one number. I asked the AI why. It found the bug: two table abbreviations were accidentally swapped in a join, pulling data from the wrong tables. The system doesn&#8217;t re-run your SQL. It writes its own query from scratch to verify every number independently.</p><p>The AI was right. I had been reporting the wrong number to the business for three months.</p><p>That&#8217;s when it got really scary.</p><p>It wasn&#8217;t a one-time thing. It caught multiple errors across different analyses. Silent errors that had been passing through normal review for months. These weren&#8217;t stupid mistakes. They were the kind of errors that pass peer review because everyone makes the same assumptions about the data. The profession&#8217;s quality floor is lower than anyone wants to admit, and the AI just exposed it. The system is not infallible. It makes mistakes too. But it learns from correction, and it documents everything it does. More than most teams can say.</p><p>I thought this might be a fluke. My boss, who manages the data team, built his own version. Another data professional did it independently, different data, different domain. Same pattern. Same results.</p><div><hr></div><h2><strong>Five Paths Forward</strong></h2><p>I sat with that fear for a while before I started asking a different question: if the job you have today is done, what&#8217;s the job you have tomorrow?</p><p>These aren&#8217;t a numbered list to pick from. They&#8217;re a landscape.</p><h3><strong>Become the Builder</strong></h3><p>You are the subject matter expert. You are the single best person in the world to build the AI system that replaces your current role.</p><p>If a software engineer tries to build an AI analyst, they have to hire you to check their work. They can&#8217;t tell if the output is right or wrong. Only you know your data well enough to validate it.</p><p>The skill isn&#8217;t coding. Coding is solved. A data professional who couldn&#8217;t ship a production application a year ago can build one now by describing what they need. The skill is domain expertise. You know what right looks like. You know which questions to ask. The frontier models and tooling to do this are here right now. They just need someone who knows the domain to sit down and start talking.</p><p><em>Monday morning: Take a question you answered last week. Feed it to an AI with your data. See what comes back. Don&#8217;t worry about whether it&#8217;s perfect. Worry about whether you can tell what&#8217;s wrong and teach it to fix it. If you can, you&#8217;re already doing the new job.</em></p><h3><strong>Become the Validator</strong></h3><p>Once the AI is doing the analysis, the problem shifts from producing work to trusting it. Someone has to answer: &#8220;Can we act on this?&#8221;</p><p>That trust doesn&#8217;t come from gut feeling. You build it by testing the AI against questions with known answers to establish ground truth. You annotate your team&#8217;s historical query library as a benchmark. You set up feedback loops where the people consuming the analysis flag what feels wrong.</p><p>Nobody panics about human drivers killing 40,000 people a year. One AI accident makes national news. The AI analyst will face that same scrutiny, and it doesn&#8217;t need to be perfect. It needs to be better than you. It already has one permanent advantage: it documents everything, every time, automatically. So your job as validator isn&#8217;t to catch every mistake. It&#8217;s to build the systems that make trust scalable.</p><p><em>Monday morning: Take the last 10 analyses your team produced. Feed the same questions to the AI. Compare. Track every divergence. That divergence log is the beginning of your validation framework.</em></p><h3><strong>Become the Translator</strong></h3><p>There&#8217;s a gap between what a business needs and what an automated system produces. That gap is your job.</p><p>A VP asks &#8220;why is conversion down?&#8221; and you turn that into the real questions. Is it traffic? Is it the product? Is it seasonal? That kind of breakdown is what keeps decisions grounded instead of reactive.</p><p>Then you go the other direction. The AI produces findings. You turn them into decisions. You know which finding matters this quarter and which one can wait. You read the politics. Why is that VP really asking right now? Is someone&#8217;s job on the line?</p><p>This is a human skill. It takes empathy and business context. You have to know the organization and how to talk to people. The AI can do the analysis. It can&#8217;t sit in the room and read the room.</p><p><em>Monday morning: Look at the last stakeholder request your team received. Write down the question they asked, then the question they actually meant. Those are probably different. That gap is your job security.</em></p><h3><strong>Become the Architect</strong></h3><p>Messy data and undocumented business logic. The AI can work around some of it, but someone needs to actually fix it.</p><p>Analysts work around messy data. They build workarounds into their queries, store the knowledge in their heads, and move on. All that stuff in your head? It needs to get out and into a system. That&#8217;s the shift. Stop working around bad data. Start fixing it.</p><p>Nothing you do will matter more than this. Every improvement to the data foundation makes every automated analysis better, automatically, forever. Fix a metric definition once and every analysis that touches it gets it right from now on. It&#8217;s the analytics engineering job, evolved. Not maintaining tables. Building the data layer that makes trust work. The AI analyst is already doing this as a side effect of getting smarter. Your job is to guide that process and make it production-grade.</p><p><em>Monday morning: Write down the three things about your data that everyone on your team knows but nobody has documented. A metric that means different things in different contexts. A table with a known edge case. A date column that doesn&#8217;t mean what its name implies. Getting that out of your head and into a system is the work.</em></p><h3><strong>Become the Solver</strong></h3><p>Do the damn work. Get shit done.</p><p>You automated your own domain. You know your data, your metrics, your edge cases cold. Good. That was the Builder path. But here is what happens next. You start noticing things that have nothing to do with your team.</p><p>You are sitting in a product review and someone mentions onboarding dropout is up. You pull churn data later that day and see the same cohort. You check support tickets. Same spike, same timeline, same customers. Three teams, three dashboards, three conversations, and nobody connected them because nobody sits across all three datasets. You do now.</p><p>That is the Solver. Not deeper expertise in one domain. Broader vision across all of them. Organizations are full of walls that humans built and never questioned. The person who walks into a room they do not own and says &#8220;teach me your numbers&#8221; is the person who finds the problems nobody else can see. Domain expertise got you in the door. Humility gets you into every other room.</p><p><em>Monday morning: Find a problem that touches two teams. Pull both datasets. See what nobody&#8217;s connecting. Then start building the fix.</em></p><div><hr></div><h2><strong>The Window Is Open. It Won&#8217;t Be Forever.</strong></h2><p>Right now, today, very few data professionals understand what&#8217;s happening. Most are still debating whether AI will &#8220;augment&#8221; their work. Their companies are running AI strategy workshops and pilots.</p><p>Meanwhile, a small number of people are already generating months of analytical output every week. In two days, I produced more validated analyses than I&#8217;d normally deliver in a month. Not every analysis was a deep-dive. Many were the routine segmentations and trend analyses that eat most of your time. But that&#8217;s the point. The routine work is what fills your calendar, and the routine work is exactly what AI handles first.</p><p>The people who move now build the deepest expertise, take the most interesting roles, and shape how their organizations adopt this. The people who wait get handed a playbook someone else wrote.</p><p>Ten years ago, the people who built the first data teams became the VPs of data. Same thing is happening now.</p><p>If your organization won&#8217;t adapt, find one that will. I know that&#8217;s a hard thing to say. The alternative is worse.</p><p>If your organization is fighting it, build the skills anyway. Start with the willing. Let results speak.</p><p>The technology is ready. Your organization probably isn&#8217;t. That gap between what&#8217;s possible and what&#8217;s adopted is your runway. Use it.</p><div><hr></div><h2><strong>Automate Yourself Out. Bring Everyone With You.</strong></h2><p>The new job is three things:</p><p><strong>Grow and nurture AI systems.</strong> Treat them like people you&#8217;re onboarding. Not a metaphor. It&#8217;s literally how it works. You talk to them. You teach them. You correct them. You watch them learn. You don&#8217;t configure software. You develop a colleague. Every company needs the person who can do this. Almost nobody has them.</p><p><strong>Execute on what they produce.</strong> The AI will generate more good ideas than you can implement. Your job is no longer generating insight. It&#8217;s turning insight into action. Building the thing, not just recommending it. Which is actually the job you wanted when you got into data in the first place.</p><p><strong>Bring everyone with you.</strong> Open source what you build. Teach people willing to learn. The code costs nothing now, so give it away. The people you help today become the network that helps you tomorrow. This isn&#8217;t altruism. It&#8217;s strategy. And it&#8217;s the right thing to do.</p><p>That process of building, teaching, and correcting these systems? It transfers. Once you&#8217;ve done it for your domain, you can do it for any domain.</p><p>Automate yourself out. Bring everyone with you.</p><p>Send this to your data team. Send it to your manager who still thinks this is five years away. Start the conversation now.</p><div><hr></div><h2><strong>Take Care of Yourself</strong></h2><p>This mindset shift is hard. It hit me hard. Over the past couple months, as all of this became clearer, I went to therapy. I quit drinking. I changed my entire lifestyle. The technology wasn&#8217;t the hard part. Watching the thing you&#8217;ve spent your career getting good at become automatable -- that&#8217;s its own kind of crisis. It rearranges how you think about who you are.</p><p>If you&#8217;re feeling that right now, you&#8217;re not weak. You&#8217;re paying attention.</p><p>You need a clear head to build what comes next. You can&#8217;t reinvent yourself while you&#8217;re falling apart. The decisions you&#8217;re going to make in the next six months will define your career for the next decade. Make them clear-headed.</p><p>When you start doing this, you&#8217;re going to get unlocked. You won&#8217;t be able to stop. It&#8217;ll be scary and exhilarating at once.</p><p>Get outside. Move your body. See your friends every week.</p><p>Take care of yourself while you do it.</p><p>And start.</p><div><hr></div><p><em>The system I built is <a href="https://github.com/ai-analyst-lab/ai-analyst">open source</a>.</em><br><br><br><br></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption"></p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Why Your Outputs Are Only as Good as Your Questions]]></title><description><![CDATA[And How to Ask Better Questions]]></description><link>https://dataneighbor.substack.com/p/frame-questions-that-drive-decisions</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/frame-questions-that-drive-decisions</guid><dc:creator><![CDATA[Hai Guan]]></dc:creator><pubDate>Sat, 21 Feb 2026 15:20:15 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!HnOM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Some people extract gold from AI. Others get garbage. I&#8217;ve seen both, and I&#8217;m pretty confident the difference isn&#8217;t the tool - it&#8217;s the question (and the context).</p><p>Your question quality really determines your output quality. This is especially true in the age of AI, because the more generic things you ask of an LLM, the less precise the answer that comes back.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!HnOM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!HnOM!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png 424w, /__u/substackcdn.com/image/fetch/$s_!HnOM!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png 848w, /__u/substackcdn.com/image/fetch/$s_!HnOM!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png 1272w, /__u/substackcdn.com/image/fetch/$s_!HnOM!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!HnOM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png" width="1456" height="821" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:821,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:91533,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188689670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!HnOM!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png 424w, /__u/substackcdn.com/image/fetch/$s_!HnOM!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png 848w, /__u/substackcdn.com/image/fetch/$s_!HnOM!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png 1272w, /__u/substackcdn.com/image/fetch/$s_!HnOM!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7d768f2-622d-414c-9996-0d978ad0d2ba_1875x1057.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>.That before/after isn't hypothetical. "Analyze user engagement" will get you a generic summary. "Which 3 engagement actions in week 1 predict 90-day retention, so we can prioritize them in onboarding?" gets you something you can actually act on. Same data, completely different question.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><p>In my experience, the thing missing from most weak questions is always the same: the decision. No one has articulated what they&#8217;re actually going to do with the answer.</p><p>I use a simple three-element checklist to catch this before starting any analysis. It&#8217;s not fancy, but it works.</p><p><strong>First:</strong> is it decision-tied? What specific decision does this inform? If the honest answer is &#8220;it would be interesting to know,&#8221; that&#8217;s a red flag. Interesting is not a decision.</p><p><strong>Second:</strong> is it data-grounded? Can you actually answer this with data you have? A beautiful, well-formed question is useless if the data doesn&#8217;t exist.</p><p><strong>Third:</strong> is it specific enough? Is the question bounded well enough that you&#8217;ll know when you&#8217;re done? Not a &#8220;boil the ocean&#8221; project - something targeted you can actually solve and act on.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!I-Ts!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!I-Ts!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png 424w, /__u/substackcdn.com/image/fetch/$s_!I-Ts!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png 848w, /__u/substackcdn.com/image/fetch/$s_!I-Ts!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png 1272w, /__u/substackcdn.com/image/fetch/$s_!I-Ts!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!I-Ts!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png" width="1456" height="821" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:821,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:134962,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188689670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!I-Ts!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png 424w, /__u/substackcdn.com/image/fetch/$s_!I-Ts!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png 848w, /__u/substackcdn.com/image/fetch/$s_!I-Ts!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png 1272w, /__u/substackcdn.com/image/fetch/$s_!I-Ts!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3523c99-0630-4461-bc50-57e4ac1ecaf9_1875x1057.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Here&#8217;s what this looks like in practice. Take the churn question - it&#8217;s one I see constantly.</p><p><strong>Version 1:</strong> &#8220;Why are users churning?&#8221; Sounds reasonable. But the decision is completely unclear. What are you going to do with the answer? What does &#8220;churning&#8221; even mean here? Two executives in the same org can mean totally different things by that word.</p><p><strong>Version 2:</strong> &#8220;What&#8217;s our churn rate by cohort?&#8221; Better - the data probably exists, and it&#8217;s more specific. But the decision is still missing. You&#8217;ll have a table of numbers and no clear instruction for what to do next.</p><p><strong>Version 3:</strong> &#8220;Which user behaviors in the first 30 days correlate with churn, so we can trigger interventions before they leave?&#8221; Now you&#8217;ve got something. The decision is explicit (which interventions to build), the data is measurable (behavioral logs), and the scope is bounded (first 30 days, ranked behaviors).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!QNKe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!QNKe!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png 424w, /__u/substackcdn.com/image/fetch/$s_!QNKe!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png 848w, /__u/substackcdn.com/image/fetch/$s_!QNKe!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png 1272w, /__u/substackcdn.com/image/fetch/$s_!QNKe!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!QNKe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png" width="1456" height="821" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:821,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:166048,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188689670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!QNKe!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png 424w, /__u/substackcdn.com/image/fetch/$s_!QNKe!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png 848w, /__u/substackcdn.com/image/fetch/$s_!QNKe!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png 1272w, /__u/substackcdn.com/image/fetch/$s_!QNKe!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7107540e-54b8-4081-b589-15a5d2562461_1875x1057.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The philosophy here isn't more words. It's more targeted framing. Even when you're not spelling out the three elements explicitly, keeping them in mind changes how you think about the question before you start.</p><div><hr></div><p>I&#8217;ve heard this pushback a lot: &#8220;I&#8217;m just exploring. I don&#8217;t have a decision yet.&#8221;</p><p>I get it. But I think when someone says that, a decision is usually hiding, not absent. You&#8217;re curious about something for a reason - there&#8217;s a hunch there, even if it&#8217;s not fully formed.</p><p>The reframe I like: even exploration has a direction. &#8220;I&#8217;m exploring user behavior&#8221; isn&#8217;t a question. &#8220;What patterns would change our next sprint priorities?&#8221; is. &#8220;I&#8217;m just looking at the data&#8221; isn&#8217;t a question. &#8220;What would I need to see to recommend we invest in X?&#8221; is. And &#8220;I don&#8217;t have a decision yet&#8221; - well, figuring out what&#8217;s worth investigating further <em>is</em> the decision.</p><p>There&#8217;s a useful way to think about it: undirected exploration is a fishing expedition. You&#8217;re just seeing where the fish are. Directed exploration is discovery with purpose. You&#8217;re not going out with no plan - you know what you&#8217;re looking for and why it matters.</p><p>One thing I&#8217;d add on the AI angle: rather than asking your LLM &#8220;Is this a good question?&#8221; and getting a yes or no, have it walk you through the checklist instead. The coaching conversation helps you find the gaps in your own thinking, which builds judgment faster than just getting a grade. Coaching is better than grading.</p><div id="youtube2-3kI7vKpvSrg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;3kI7vKpvSrg&quot;,&quot;startTime&quot;:&quot;2234s&quot;,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/3kI7vKpvSrg?start=2234s&amp;rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Here&#8217;s a practical move I&#8217;ve found has disproportionately high returns: when someone hands you a question to answer, before you start, ask them - &#8220;What decision are you trying to drive with this?&#8221;</p><p>About 60% of the time, they pause and realize it&#8217;s not actually a great question. One follow-up question, and you&#8217;ve potentially saved hours.</p><p>So yeah, before you start the next analysis, pressure-test the question first. It&#8217;s probably the highest-ROI thing you can do.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><p>Check out for our upcoming courses and free workshops: <a href="https://dataneighbor.com">https://dataneighbor.com</a></p>]]></content:encoded></item><item><title><![CDATA[Will Claude Code + Opus 4.6 Replace Your Data Team?]]></title><description><![CDATA[No code. I built an agentic data team that delivers full analyses in minutes instead of weeks.]]></description><link>https://dataneighbor.substack.com/p/will-claude-code-opus-46-replace</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/will-claude-code-opus-46-replace</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Mon, 16 Feb 2026 00:26:26 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ZyrQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>After a few days of stress testing Opus 4.6, I&#8217;m convinced that this will replace most of what data scientists do today. Not just the execution. The queries, the charts, the slides, yes. But what surprised me was the judgment. The curiosity. The ability to frame a vague ask into a structured analytical question, generate hypotheses, and catch patterns that most human analysts would miss.</p><p>I built an AI data analyst inside Claude Code that takes any dataset and produces a full slide deck (charts, narrative, recommendations) in about 15 minutes. No Python. No SQL. No coding at all. The entire system is markdown files that Claude Code reads and follows. This post is the full walkthrough: how it works, what it produced on real data, and how you can build one yourself.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Data Neighbor Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>If you work with data in any capacity, this is for you. PM, DS, analyst, engineer who gets pulled into &#8220;can you look at this?&#8221; conversations. Could you take this to work on Monday and actually use it? By the end of this post, I think the answer is yes.</p><h2><strong>The tools</strong></h2><p>A few things worth explaining up front so you know what you&#8217;re looking at.</p><p><strong>Claude Code</strong> is Anthropic&#8217;s AI coding agent. It runs in your terminal, or inside an IDE, and operates directly in your codebase. It reads your project files, writes code, executes commands, and follows instructions you define in markdown files. It&#8217;s an agent that works inside your project with full access to your files, your data, and your tools.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!bVTO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!bVTO!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png 424w, /__u/substackcdn.com/image/fetch/$s_!bVTO!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png 848w, /__u/substackcdn.com/image/fetch/$s_!bVTO!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png 1272w, /__u/substackcdn.com/image/fetch/$s_!bVTO!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!bVTO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png" width="1456" height="701" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:701,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:83178,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188088058?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!bVTO!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png 424w, /__u/substackcdn.com/image/fetch/$s_!bVTO!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png 848w, /__u/substackcdn.com/image/fetch/$s_!bVTO!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png 1272w, /__u/substackcdn.com/image/fetch/$s_!bVTO!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea0ba5b9-27d4-4423-a3eb-f86123b57656_1474x710.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Opus 4.6</strong> is the model powering Claude Code. Anthropic&#8217;s most capable model. It&#8217;s what gives the system its analytical judgment, its curiosity, and its ability to turn a vague ask into a structured analytical question. You select it when you launch Claude Code.</p><p><strong>Google Antigravity</strong> is the IDE where this all runs. Think VS Code but with Claude Code built in natively. You can see the terminal, the file explorer, and the output side by side. Not required (Claude Code works in any terminal) but it&#8217;s a nice workspace for seeing everything at once.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!ZyrQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!ZyrQ!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png 424w, /__u/substackcdn.com/image/fetch/$s_!ZyrQ!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png 848w, /__u/substackcdn.com/image/fetch/$s_!ZyrQ!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png 1272w, /__u/substackcdn.com/image/fetch/$s_!ZyrQ!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!ZyrQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png" width="1456" height="910" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:910,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:865625,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188088058?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!ZyrQ!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png 424w, /__u/substackcdn.com/image/fetch/$s_!ZyrQ!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png 848w, /__u/substackcdn.com/image/fetch/$s_!ZyrQ!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png 1272w, /__u/substackcdn.com/image/fetch/$s_!ZyrQ!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe14afe63-3711-4642-8721-1373d0725a7c_3584x2240.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Cost and usage.</strong> Claude Code runs on your Anthropic subscription. Usage limits refresh every few hours and weekly. The entire Hawaii analysis, from raw CSVs to finished deck, ran within a single session&#8217;s limits.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!aIQH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!aIQH!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png 424w, /__u/substackcdn.com/image/fetch/$s_!aIQH!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png 848w, /__u/substackcdn.com/image/fetch/$s_!aIQH!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png 1272w, /__u/substackcdn.com/image/fetch/$s_!aIQH!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!aIQH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png" width="1456" height="443" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:443,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:275408,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188088058?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!aIQH!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png 424w, /__u/substackcdn.com/image/fetch/$s_!aIQH!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png 848w, /__u/substackcdn.com/image/fetch/$s_!aIQH!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png 1272w, /__u/substackcdn.com/image/fetch/$s_!aIQH!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa99b64-8ba4-4ce4-8ab4-19afa9b5775f_3556x1082.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Start with the output</strong></h2><p>Before I explain how any of this works, here&#8217;s what it produced.</p><p>I pointed it at <a href="https://www.hawaiitourismauthority.org/research/monthly-visitor-statistics/">Hawaii Tourism Authority</a> data and said &#8220;go analyze this.&#8221; Monthly visitor arrivals by island, country of origin, and airline capacity, 2024 vs 2025. That was my entire prompt.</p><p>This wasn&#8217;t a clean dataset. It was dozens of separate monthly CSV reports from a government website. Visitor arrivals, spending by category, airline seat capacity, source markets. Each one a separate PDF or spreadsheet download. The kind of data that normally takes half a day just to wrangle into something usable.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!1QRp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!1QRp!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png 424w, /__u/substackcdn.com/image/fetch/$s_!1QRp!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png 848w, /__u/substackcdn.com/image/fetch/$s_!1QRp!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png 1272w, /__u/substackcdn.com/image/fetch/$s_!1QRp!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!1QRp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png" width="1456" height="1463" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1463,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:469422,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188088058?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!1QRp!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png 424w, /__u/substackcdn.com/image/fetch/$s_!1QRp!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png 848w, /__u/substackcdn.com/image/fetch/$s_!1QRp!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png 1272w, /__u/substackcdn.com/image/fetch/$s_!1QRp!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c97f3c-2fba-4112-a77f-88c0451a7a94_1676x1684.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Fifteen minutes later, I had a complete slide deck. Not a rough draft. A finished presentation with a narrative arc, publication-ready charts, and actionable recommendations, each one tagged with a decision owner, success metric, and follow-up date.</p><p>Here&#8217;s the full 20-slide deck. <a href="https://aianalystlab.ai/deck_hawaii_tourism.pdf">Download the PDF</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!hIto!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!hIto!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png 424w, /__u/substackcdn.com/image/fetch/$s_!hIto!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png 848w, /__u/substackcdn.com/image/fetch/$s_!hIto!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png 1272w, /__u/substackcdn.com/image/fetch/$s_!hIto!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!hIto!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png" width="1456" height="1039" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1039,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:915300,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188088058?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!hIto!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png 424w, /__u/substackcdn.com/image/fetch/$s_!hIto!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png 848w, /__u/substackcdn.com/image/fetch/$s_!hIto!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png 1272w, /__u/substackcdn.com/image/fetch/$s_!hIto!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79e84bef-e86f-4c21-a2c7-a51bc175bfb9_1960x1398.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I didn&#8217;t write a single SQL query, make a single chart, or outline a single slide.</p><h2><strong>How the system works</strong></h2><p>It&#8217;s a system of markdown files that live in a repo.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!qDho!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!qDho!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png 424w, /__u/substackcdn.com/image/fetch/$s_!qDho!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png 848w, /__u/substackcdn.com/image/fetch/$s_!qDho!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png 1272w, /__u/substackcdn.com/image/fetch/$s_!qDho!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!qDho!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png" width="396" height="838.3102625298329" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a4364a78-93fe-4312-888f-211b670aeae3_838x1774.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1774,&quot;width&quot;:838,&quot;resizeWidth&quot;:396,&quot;bytes&quot;:225920,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188088058?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!qDho!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png 424w, /__u/substackcdn.com/image/fetch/$s_!qDho!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png 848w, /__u/substackcdn.com/image/fetch/$s_!qDho!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png 1272w, /__u/substackcdn.com/image/fetch/$s_!qDho!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4364a78-93fe-4312-888f-211b670aeae3_838x1774.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The whole thing is controlled by one file: <strong>CLAUDE.md</strong>. Think of it as onboarding docs for a new analyst. It has six sections:</p><ol><li><p><strong>Who You Are</strong> sets the persona in one line: &#8220;You are an AI Product Analyst.&#8221;</p></li><li><p><strong>What You Do</strong> defines scope and boundaries. Funnel analysis, segmentation, drivers analysis, yes. Predictive modeling, dashboards, no.</p></li><li><p><strong>Your Skills</strong> is a registration table. Each skill has a name, a file path, and a trigger condition. When the trigger matches, Claude Code reads and follows that skill automatically.</p></li><li><p><strong>Your Agents</strong> is another registration table. Each agent has a name, a file path, and an invocation condition. You call agents on demand for specific multi-step tasks.</p></li><li><p><strong>Default Workflow</strong> is the step-by-step playbook: frame the question, explore the data, analyze, validate, tell the story, present.</p></li><li><p><strong>Rules</strong> are non-negotiable guardrails: &#8220;always validate SQL before presenting results,&#8221; &#8220;never present unvalidated findings as conclusions.&#8221;</p></li></ol><p>Everything the system does traces back to this one file. And it&#8217;s plain text. Editable by anyone.</p><h3><strong>Skills vs agents</strong></h3><p>This is the core distinction that makes the whole system make sense.</p><p><strong>Skills define HOW things get done.</strong> They&#8217;re standards, patterns, rules. Like a style guide. They&#8217;re always active. When Claude Code generates a chart, the visualization patterns skill automatically applies. When it starts an analysis, the data quality check skill runs without being asked. You don&#8217;t invoke a skill. It applies itself whenever the trigger condition matches.</p><p><strong>Agents define WHAT gets done.</strong> They&#8217;re multi-step workflows with inputs, steps, and outputs. You invoke them on demand: &#8220;run the descriptive analytics agent on this dataset.&#8221; Each agent reads its markdown file, substitutes the variables you provide, and executes the workflow step by step.</p><p>The connection: skills tell agents what &#8220;good&#8221; looks like. Change the chart color palette in the visualization skill, and every agent that makes charts (descriptive analytics, chart maker, storytelling) produces different-looking output. You didn&#8217;t touch any of those agents. You changed one skill file. That separation is what makes the system modular and composable.</p><h3><strong>The pipeline: 15 agents across 6 phases</strong></h3><p>The full workflow uses 15 agents and 12 skills organized into six phases. Some phases run in parallel (the Explore agents can work simultaneously on different angles of the data). Others are strictly sequential (nothing gets charted until the story architect designs the narrative arc). Four explicit checkpoints gate the process. If the Simpson&#8217;s Paradox check hasn&#8217;t run, if chart titles collide with slide headlines, if recommendations aren&#8217;t ranked by confidence, the pipeline halts until the issue is fixed.</p><p><strong>Phase 1: Frame</strong></p><ul><li><p><strong>Question Framing</strong> turns a vague ask into structured analytical questions with decision context</p></li><li><p><strong>Hypothesis</strong> generates testable theories across four cause categories</p></li></ul><p><strong>Phase 2: Explore</strong> (agents run in parallel where inputs allow)</p><ul><li><p><strong>Data Explorer</strong> profiles what data exists, its structure, and its quality</p></li><li><p><strong>Descriptive Analytics</strong> runs segmentation, funnels, and drivers analysis</p></li><li><p><strong>Overtime/Trend</strong> finds patterns over time, seasonality, and anomalies</p></li><li><p><strong>Root Cause Investigator</strong> drills down iteratively through dimensions, up to seven layers deep</p></li><li><p><strong>Opportunity Sizer</strong> quantifies business impact with sensitivity analysis</p></li><li><p><strong>Experiment Designer</strong> designs A/B tests with power estimation and decision rules</p></li></ul><p><strong>Phase 3: Validate</strong></p><ul><li><p><strong>Validation</strong> re-derives key numbers independently (writes new queries, not copies) and cross-checks arithmetic. Flags common traps like Simpson&#8217;s Paradox and survivorship bias.</p></li></ul><p><strong>Phase 4: Story</strong> (sequential, each step feeds the next)</p><ul><li><p><strong>Story Architect</strong> designs narrative beats following a Context/Tension/Resolution arc. The number of beats is emergent, not a target.</p></li><li><p><strong>Narrative Coherence Reviewer</strong> validates story flow before any charting begins</p></li><li><p><strong>Storytelling</strong> writes the narrative from the storyboard</p></li></ul><p><strong>Phase 5: Charts</strong></p><ul><li><p><strong>Chart Maker</strong> generates each chart following Storytelling with Data methodology</p></li><li><p><strong>Visual Design Critic</strong> reviews against a checklist: action titles, direct labels, gray-first-then-color</p></li></ul><p><strong>Phase 6: Deliver</strong></p><ul><li><p><strong>Deck Creator</strong> assembles Marp slides with theming, breathing slides for pacing, and speaker notes. Runs a final design review.</p></li></ul><p>Twelve skills run throughout, shaping how every agent works:</p><ul><li><p><strong>Analysis:</strong> data quality check, question framing, analysis design spec, triangulation</p></li><li><p><strong>Metrics:</strong> metric spec, tracking gaps, guardrails</p></li><li><p><strong>Output:</strong> visualization patterns, presentation themes, stakeholder communication</p></li><li><p><strong>Process:</strong> close-the-loop, run-pipeline (orchestrates the whole thing)</p></li></ul><h2><strong>What surprised me: the judgment</strong></h2><p>The SQL, the charts, the database, the slides. That&#8217;s all impressive execution. But the part that actually surprised me was the analytical judgment.</p><p>In the Hawaii data, the statewide visitor count was essentially flat. Down 0.4% year over year. Most tools would report &#8220;no significant change&#8221; and move on.</p><p>The descriptive analytics agent includes a mandatory Simpson&#8217;s Paradox check. Even when the aggregate looks flat, it automatically segments by default dimensions (geography, channel, device, cohort) to see if opposite trends are hiding underneath. In this case, they were. Maui had surged 7% while every other island declined. The aggregate was hiding completely opposite trends. The agent caught it unprompted because the check is built into the workflow, not dependent on me asking the right question.</p><p>Then it decomposed O&#8217;ahu&#8217;s decline by accommodation type, finding that hotel visitors drove the loss while vacation rentals held steady.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!AFJd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!AFJd!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png 424w, /__u/substackcdn.com/image/fetch/$s_!AFJd!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png 848w, /__u/substackcdn.com/image/fetch/$s_!AFJd!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png 1272w, /__u/substackcdn.com/image/fetch/$s_!AFJd!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!AFJd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png" width="1456" height="812" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:812,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:63267,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188088058?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!AFJd!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png 424w, /__u/substackcdn.com/image/fetch/$s_!AFJd!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png 848w, /__u/substackcdn.com/image/fetch/$s_!AFJd!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png 1272w, /__u/substackcdn.com/image/fetch/$s_!AFJd!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42a4cf3f-fdb6-4688-8641-6770544d3c45_1514x844.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The root cause investigator went further. It follows a &#8220;peel the onion&#8221; approach: start with the surface observation, test each available dimension to find which explains the most variation, isolate the specific segment responsible, then repeat. Up to seven iterations deep. It doesn&#8217;t stop at &#8220;Maui is different.&#8221; It drills into which source markets, which routes, which months are driving the divergence.</p><p>The validation agent then re-derives the key numbers independently and cross-checks with the triangulation skill. No finding makes it to the narrative without arithmetic verification.</p><p>And the charts reflect it. Every chart follows Storytelling with Data principles: action titles that state the takeaway, direct labels instead of legends, gray everything first and use color only for the story point.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!of4E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!of4E!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png 424w, /__u/substackcdn.com/image/fetch/$s_!of4E!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png 848w, /__u/substackcdn.com/image/fetch/$s_!of4E!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png 1272w, /__u/substackcdn.com/image/fetch/$s_!of4E!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!of4E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png" width="1456" height="885" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/661fb355-443e-4f7d-a976-da41ff837800_1508x917.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:885,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:84915,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/188088058?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!of4E!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png 424w, /__u/substackcdn.com/image/fetch/$s_!of4E!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png 848w, /__u/substackcdn.com/image/fetch/$s_!of4E!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png 1272w, /__u/substackcdn.com/image/fetch/$s_!of4E!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F661fb355-443e-4f7d-a976-da41ff837800_1508x917.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The story architect then takes all the findings and designs a narrative arc. Context, Tension, Resolution. The number of beats and charts is an emergent property of the story, not a target. The narrative coherence reviewer validates that each beat&#8217;s transition question is answered by the next one. No gaps, no orphaned insights, no charts that don&#8217;t earn their place in the deck.</p><h2><strong>It gets better every time</strong></h2><p>The one-shot quality is impressive, but it&#8217;s not the most important part. It gets better every time you use it.</p><p>The Hawaii analysis was the second major run. The first was on NovaMart, a synthetic e-commerce dataset. That analysis was good, but I gave it specific feedback afterward. What happened next is what makes this approach fundamentally different from prompting a chatbot.</p><p>I told it the chart titles were duplicating the slide headlines. It didn&#8217;t just fix the charts in front of me. It updated three separate agent files (chart-maker, deck-creator, and visual-design-critic) and added a validation check so the issue would never recur on any future dataset.</p><p>I told it the narrative voice was too corporate and dramatic. It rewrote its own storytelling rules and added voice guidelines to the story-architect and storytelling agents. Now every analysis comes out in the right voice automatically.</p><p>I pointed out that chart annotations were colliding with data points on dense charts. It added collision detection logic to the chart-maker agent and a specific review criterion to the visual-design-critic.</p><p>This is the key difference between a chat-based AI workflow and a system-based one. In a chat tool, you start fresh every time. There&#8217;s no institutional memory. Here, every piece of feedback becomes a permanent improvement to the system files themselves. The agents, the skills, the rules. Self-improving configuration, all living in the project repo, compounding with every run.</p><p>If you&#8217;ve ever built a team knowledge base or maintained runbooks that get better over time, you already understand this pattern. The difference is that here, the system can update its own documentation based on what it learns.</p><h2><strong>How we built it</strong></h2><p>You don&#8217;t need to replicate the full 18-step pipeline to get started. But the process matters. There&#8217;s a six-step build pattern that applies to building any skill or agent:</p><p><strong>1. Explore.</strong> Brainstorm with Claude Code. Don&#8217;t build anything yet. Talk about what you want to build, what problem it solves, who the output is for, what &#8220;good&#8221; looks like. The brainstorm that kicked off our system was a one-hour conversation that covered audience, scope, constraints, and exit outcomes before we touched a single file.</p><p><strong>2. Spec.</strong> Tell Claude Code what you want the skill or agent to do. It writes the specification for you: purpose, trigger conditions, instructions, examples, anti-patterns. You review. You talk through it. Claude Code creates the markdown file.</p><p><strong>3. Plan.</strong> Claude Code breaks the spec into a concrete file list. What files need to be created, where they live, what each one contains.</p><p><strong>4. Build.</strong> Claude Code writes the files. Skills go in <code>.claude/skills/</code>. Agents go in <code>agents/</code>. Each one is a markdown file with plain English instructions. Human readable, human editable if you want, but Claude handles the creation.</p><p><strong>5. Test.</strong> Run on real data. Look at the output. Does the chart theme match? Did the agent follow all the steps? Did it miss anything?</p><p><strong>6. Iterate.</strong> Give specific feedback. Claude Code updates the files itself. Run again. Every cycle makes the output better.</p><p>The key thing: you never have to write these files by hand. You describe what you want in plain English and Claude Code creates them. I use a speech-to-text flow to dictate feedback while reviewing output. Talk, review, iterate. The entire system is markdown files that Claude Code reads and maintains.</p><p>We went through this loop multiple times before the Hawaii analysis. Each run produced noticeably better output. There&#8217;s no proprietary tooling. Just Claude Code and a well-structured project.</p><h2><strong>Build systems or get replaced by AI</strong></h2><p>This is building decks that are ready for me to walk into a Monday morning meeting and present to execs. Recommendations, action items, decision owners, follow-up dates. All from a single prompt. 90% of analysts and data scientists I know can&#8217;t operate at this level. Not because they lack the skill. Because they&#8217;re still doing everything manually, one query at a time.</p><p>The analysts who will thrive in the next few years aren&#8217;t the ones who run the best queries. They&#8217;re the ones who build systems. Who encode their analytical judgment into tools that compound over time. The rest will get replaced by Claude Code.</p><p>Open a terminal. Point Claude Code at a dataset. Ask a question. &#8220;Why did signups drop in January?&#8221; or &#8220;Which user segments have the highest engagement?&#8221; or &#8220;What&#8217;s driving the change in our conversion rate?&#8221; It frames the question, explores the data, runs the analysis, validates the numbers, and produces a narrative with charts you could present that afternoon.</p><p><strong>Want to see this live before building your own?</strong> We&#8217;re running a <strong><a href="https://maven.com/p/c56895">free 2-hour workshop on February 27</a></strong> where we walk through the system and run a live analysis. No commitment, just come watch it work.</p><p>If you want to <strong>build one yourself</strong>, the <strong><a href="https://maven.com/dataneighbor/build-ai-analysts-in-claude-code">Build AI Analysts in Claude Code</a> bootcamp</strong> runs <strong>March 28-29, 2026</strong>. Weekend intensive, eight hours total. You walk through the full six-step build pattern from brainstorm to working system. You leave with a complete repo: skills, agents, connected data sources, and a finished analysis you ran yourself. Three instructors providing real-time support. No coding experience required.</p><p>If you want to go deeper after that, we have a five-week course that teaches the full analytical workflow (question framing, metrics, deep dives, experimentation, storytelling) and how to build systems like this for your own work.</p><p>The tools are here. The gap is about to get obvious.</p><div><hr></div><h3><strong>Want to build a system like this?</strong></h3><p>Join our weekend bootcamp on March 28-29. Eight hours, three instructors, leave with a working repo.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/dataneighbor/build-ai-analysts-in-claude-code&quot;,&quot;text&quot;:&quot;Join the Bootcamp ($600)&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/dataneighbor/build-ai-analysts-in-claude-code"><span>Join the Bootcamp ($600)</span></a></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Data Neighbor Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What 500 User Interviews Taught Me About the Data Industry's Biggest Blind Spot]]></title><description><![CDATA[With Index CEO Xavier Pladevall]]></description><link>https://dataneighbor.substack.com/p/data-industry-biggest-blind-spot</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/data-industry-biggest-blind-spot</guid><dc:creator><![CDATA[Hai Guan]]></dc:creator><pubDate>Fri, 06 Feb 2026 15:00:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/UyVbgD0V8mw" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-UyVbgD0V8mw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;UyVbgD0V8mw&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/UyVbgD0V8mw?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>I remember the first time I saw a data scientist bring a Jupyter notebook to a business stakeholder meeting. The exec squinted at the screen. &#8220;Can you just... make it a bar chart?&#8221; The data scientist looked confused. &#8220;But the notebook shows all the transformations, the statistical&#8230;&#8221; The exec had already checked their phone.</p><p><a href="https://www.linkedin.com/in/pladevall/">Xavier Pladevall</a>, co-founder of Index, has had that conversation about 500 times now. And what he found should make every data person rethink what they&#8217;re building.</p><p>&#8220;There&#8217;s this huge disconnection between what people are talking about in data world - Twitter, conferences, investors, VC-driven things - and what&#8217;s actually on the ground, where people are using very simple tools.&#8221;</p><p>While Data Twitter debates semantic layers and metrics frameworks, users are asking for clean dashboards. While we argue about the perfect data stack, stakeholders want a chart that doesn&#8217;t look like garbage. The gap between what we think matters and what actually moves the needle is enormous.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!16kL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!16kL!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!16kL!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!16kL!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!16kL!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!16kL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6799262,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/187053793?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!16kL!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!16kL!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!16kL!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!16kL!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2e45424-ee74-4440-bf39-af2f8e6550e9_2816x1536.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>What people actually want from data tools</strong></h2><p>After talking to close to 500 people, Xavier landed on patterns that should be obvious but somehow aren&#8217;t.</p><h3>1. Form factor beats features</h3><p>Notebooks are powerful. Stakeholders hate them.</p><p>&#8220;Customers constantly keep saying that they don&#8217;t want a notebook. They don&#8217;t have a mental model for how notebooks run.&#8221;</p><p>Nobody&#8217;s VP of Sales walks into your office asking for a Jupyter notebook. They want a dashboard. They want a chart. The industry spent years pushing notebooks as the future of analytics because they&#8217;re flexible and reproducible. Users spent years ignoring notebooks because they don&#8217;t fit how business people think.</p><p>This isn&#8217;t about dumbing things down. It&#8217;s about matching the tool to how people actually work. Figma didn&#8217;t win because it had more features than Sketch. It won because the form factor - browser-based, collaborative, real-time - matched how design teams actually operated.</p><p>Same data, same analysis, different package. One gets used. One sits in a repo.</p><h3>2. Design quality isn&#8217;t cosmetic&#8212;it builds trust</h3><p>Here&#8217;s something nobody talks about: ugly charts get trusted less.</p><p>Same data. Same analysis. Put it in an ugly dashboard and stakeholders doubt it. Put it in a polished one and they act on it.</p><p>Shane Butler said it plainly on the podcast: &#8220;There&#8217;s some implicit belief that someone has credibility, or the graph has credibility, if it doesn&#8217;t look like a piece of shit.&#8221;</p><p>Xavier confirmed: &#8220;They&#8217;re gonna trust it less.&#8221;</p><p>This pattern exists across all software. Linear didn&#8217;t beat Jira on features. It beat Jira because it felt professional to use. Notion didn&#8217;t beat Confluence because it had better databases. It won because people wanted to open it.</p><p>Data tools get a pass on design because we treat analysis as purely logical. But humans don&#8217;t work that way. Presentation affects perception. If your dashboard looks like it was built in 2008, people assume your analysis is stuck there too.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><h3>3. Data quality matters more than every other feature combined</h3><p>Xavier called it the Pareto principle of analytics: &#8220;I think data quality - everything else might be a distraction. Everything I tell you might be a variation of data quality.&#8221;</p><p>The NBA example is perfect. Index&#8217;s AI confidently told them the Lakers won 219 championships. Why? It confused playoff games with championships. The AI worked fine. The data was messy.</p><p>This is why the AI hype cycle in analytics shifted so fast. A year ago, everyone talked about context windows and model capabilities. Now the conversation is: &#8220;Can we trust this in production?&#8221;</p><p>You can have the smartest AI, the sleekest interface, the fastest queries. If your underlying data is bad, you get analytics slop. Bad threads. Bad chats. Confident answers to the wrong question.</p><p>Most data teams know this. But we keep getting distracted by shiny new tools instead of fixing the boring foundation work. Clean your data or nothing else matters.</p><h3>4. SQL matters more than ever (but it&#8217;s getting abstracted)</h3><p>&#8220;It&#8217;ll always matter and it might even matter more... it&#8217;s like lingua franca now that everything boils down to. Because you have Cursor, it doesn&#8217;t mean code doesn&#8217;t matter. It matters probably more than ever.&#8221;</p><p>The pattern: fundamental skills become more important as they get easier to execute.</p><p>Code didn&#8217;t die when Cursor launched. Developers write more code, faster, with AI assistance. SQL won&#8217;t die as AI tools generate queries. Data people will run more analysis, faster, because the execution barrier dropped.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!Z78B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!Z78B!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png 424w, /__u/substackcdn.com/image/fetch/$s_!Z78B!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png 848w, /__u/substackcdn.com/image/fetch/$s_!Z78B!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png 1272w, /__u/substackcdn.com/image/fetch/$s_!Z78B!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!Z78B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png" width="783" height="783" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:783,&quot;width&quot;:783,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:84000,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/187053793?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!Z78B!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png 424w, /__u/substackcdn.com/image/fetch/$s_!Z78B!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png 848w, /__u/substackcdn.com/image/fetch/$s_!Z78B!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png 1272w, /__u/substackcdn.com/image/fetch/$s_!Z78B!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc02315d3-c9a4-4713-8eac-0c164be1ae3d_783x783.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Xavier borrowed the &#8220;low floor, high ceiling&#8221; idea from Figma&#8217;s Dylan Field: &#8220;The tool should be very easy to use for a complete noob. And if you have the best designer in the world, that should be their tool.&#8221;</p><p>AI in analytics should work the same way. Beginners get to useful answers without learning SQL syntax. Experts move faster by offloading boilerplate to AI and focusing on complex logic. The floor drops, the ceiling rises.</p><h3>5. The future isn&#8217;t replacing dashboards - it&#8217;s making them proactive</h3><p>Index 2.0 isn&#8217;t trying to kill dashboards. It&#8217;s trying to make them smart.</p><p>The idea: proactive question suggestions before you even ask. Chat alongside dashboards. Instead of replacing your existing tools, it sits next to them.</p><p>Why? Because rip-and-replace doesn&#8217;t work. People already have dashboards. They already have workflows. Telling them to throw it all out for your new thing is a losing strategy.</p><p>But what if your dashboard suggested the next question before you thought to ask it? What if the chart you&#8217;re looking at could answer follow-ups in plain English?</p><p>Xavier&#8217;s vision goes further: &#8220;I got my top 10 leads&#8212;sending them an email right from Index. Bringing the role of the data person as a center role, core to the business rather than this auxiliary thing that informs the business.&#8221;</p><p>The problem today: insight happens, then someone emails it, then someone discusses it, then maybe someone acts on it. Days or weeks later.</p><p>&#8220;It shortens the feedback loop. It collapses it basically. When will someone act on that insight? It might be days, months. Whereas if the data was much more connected, we could take action on it immediately.&#8221;</p><p>Data tools that connect directly to action tools. Insight to execution in one click. That&#8217;s the shift from reporting what happened to actually moving the business.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!9aHY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!9aHY!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png 424w, /__u/substackcdn.com/image/fetch/$s_!9aHY!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png 848w, /__u/substackcdn.com/image/fetch/$s_!9aHY!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png 1272w, /__u/substackcdn.com/image/fetch/$s_!9aHY!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!9aHY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png" width="1456" height="761" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:761,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:903685,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/187053793?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!9aHY!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png 424w, /__u/substackcdn.com/image/fetch/$s_!9aHY!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png 848w, /__u/substackcdn.com/image/fetch/$s_!9aHY!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png 1272w, /__u/substackcdn.com/image/fetch/$s_!9aHY!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd88985e6-7a32-478f-91e6-fbb37a4e4ffc_1568x820.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>What this means for data teams</strong></h2><ul><li><p>Stop building for Data Twitter. Build for the person who just needs a clean bar chart.</p></li><li><p>Invest in design. Your analysis is only as trusted as it looks.</p></li><li><p>Fix your data quality before you add another tool to the stack.</p></li><li><p>Learn SQL (or get better at it). AI makes it more valuable, not less.</p></li></ul><p>Think about where your insights actually lead to action. If there&#8217;s a week-long gap, you&#8217;re losing.</p><h2><strong>Ready to level up your analytics skills?</strong></h2><p>We&#8217;re offering two new learning opportunities:</p><p><strong>Free workshops:</strong> We&#8217;re running a series on AI evaluation and agentic analytics. Topics include analyzing product data with no-code tools, designing AI evaluation plans, creating custom annotation tools, and more. Full schedule at dataneighbor.com.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.com/&quot;,&quot;text&quot;:&quot;Join Our Free Live Lessons&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://dataneighbor.com/"><span>Join Our Free Live Lessons</span></a></p><p><strong>Cohort-based courses:</strong></p><ul><li><p><strong><a href="https://maven.com/dataneighbor/ai-analytics-for-builders">AI Analytics for Builders</a>:</strong> Learn to leverage AI to become your own product data scientist, or magnify your impact as a data scientist. Claim your <a href="https://maven.com/p/f63136/claim-your-launch-code-for-ai-analytics-for-builders?utm_medium=lead_magnet_share_link&amp;utm_source=instructor">20% discount here</a>.</p></li><li><p><strong><a href="https://maven.com/dataneighbor/ai-evals">AI Evaluations for Product Development</a>:</strong> Learn to measure the actual impact of AI features on user and business outcomes. Claim your <a href="https://maven.com/dataneighbor/ai-evals?promoCode=ai-evals-20">20% discount here</a>.</p></li></ul><p>Both are hands-on, practical, 5-6 week programs where you&#8217;ll work with us and other practitioners in the field. Check it out at <a href="http://dataneighbor.com/">dataneighbor.com</a>.</p>]]></content:encoded></item><item><title><![CDATA[Where do AI Builders hang out? We built a Slack for it. You're invited!]]></title><description><![CDATA[In our workshop last Friday, someone asked us: &#8220;So where do all the AI builders hang out?&#8221;]]></description><link>https://dataneighbor.substack.com/p/where-do-ai-builders-hang-out-we</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/where-do-ai-builders-hang-out-we</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Wed, 04 Feb 2026 16:19:22 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jx46!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe650f36b-3659-4534-bc71-1a5b9a78c3da_800x800.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In our workshop last Friday, someone asked us: <em>&#8220;So where do all the AI builders hang out?&#8221;</em></p><p>Honestly, we didn&#8217;t have a great answer.<br><br><strong>So we built the thing we wished already existed: the <a href="https://join.slack.com/t/dataneighbor/shared_invite/zt-3ox4drc3r-3g0ptSthytkgv0sD6ovvqg">AI Builders Slack Community </a>by Data Neighbor. And you&#8217;re invited!</strong></p><p>This is a place to build AI better with less guesswork.<br><br> This <a href="https://join.slack.com/t/dataneighbor/shared_invite/zt-3ox4drc3r-3g0ptSthytkgv0sD6ovvqg">Slack community</a> is to help you:</p><ul><li><p>Meet other AI builders</p></li><li><p>Learn how to design and implement AI evals that actually support product decisions</p></li><li><p>Learn how to build and use agentic analytics workflows to go from question &#8594; analysis &#8594; decision fast</p></li><li><p>Share what you&#8217;re building and get feedback when you&#8217;re stuck</p></li><li><p>Swap resources, examples, and patterns that work in real products</p></li><li><p>Stay in the loop on free workshops, live sessions, recordings, and many other resources</p></li></ul><p>-&gt; -&gt;<a href="https://join.slack.com/t/dataneighbor/shared_invite/zt-3ox4drc3r-3g0ptSthytkgv0sD6ovvqg"> </a><strong><a href="https://join.slack.com/t/dataneighbor/shared_invite/zt-3ox4drc3r-3g0ptSthytkgv0sD6ovvqg">Click here to Join the AI Builders Slack by Data Neighbor</a></strong> &lt;- &lt;-</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://join.slack.com/t/dataneighbor/shared_invite/zt-3ox4drc3r-3g0ptSthytkgv0sD6ovvqg&quot;,&quot;text&quot;:&quot;Join AI Builders Slack Community&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://join.slack.com/t/dataneighbor/shared_invite/zt-3ox4drc3r-3g0ptSthytkgv0sD6ovvqg"><span>Join AI Builders Slack Community</span></a></p><p><br> <strong>Invite your friends and colleagues:<a href="https://join.slack.com/t/dataneighbor/shared_invite/zt-3ox4drc3r-3g0ptSthytkgv0sD6ovvqg"> bit.ly/ai-connect</a></strong></p><p>Looking forward to working with you all!<br><br></p>]]></content:encoded></item><item><title><![CDATA[Validating business impact of AI features]]></title><description><![CDATA[A guide to connecting AI quality to revenue (without waiting a quarter)]]></description><link>https://dataneighbor.substack.com/p/validating-business-impact-of-ai</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/validating-business-impact-of-ai</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Mon, 02 Feb 2026 18:52:21 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/BJkAdPsakfk" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>One phrase that keeps cropping up when I talk with teams shipping AI into real product workflows is &#8220;ai quality.&#8221;</p><p>They improved a metric, or a rubric score went up, or the outputs look better in their error analysis or quick spot checks. Then someone in leadership asks the question that changes the whole conversation: </p><blockquote><p><em><strong>Did this increase profit, and did it increase risk?</strong></em></p></blockquote><p>That question is awkward because it mixes worlds. Engineering lives in model behavior and failure modes, while the business lives in retention, expansion, margins, and operational risk. And even when you know the change helped users, business outcomes often lag by weeks or months, while product decisions have to be made now.</p><p>Last week, we ran a full live workshop on this topic for over 250 AI builders. We walked through a practical framework for going from AI eval metrics to revenue, using a chain of scientific evidence that holds up in real roadmap decisions.</p><p>For context, I teach this workflow (as well as the entire end-to-end eval process) in <strong><a href="https://maven.com/dataneighbor/ai-evals">AI Evals for Product Development</a></strong>, where we go deep on measurement design, instrumentation, analysis, rollout gates, decision making, and much much more.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/dataneighbor/ai-evals&quot;,&quot;text&quot;:&quot;Learn AI Evals Today!&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/dataneighbor/ai-evals"><span>Learn AI Evals Today!</span></a></p><p></p><p>In today&#8217;s issue, we&#8217;ll focus on how to validate the business impact of AI feature development.</p><p>If you&#8217;d rather watch than read, you can check out the live workshop for free here:</p><div id="youtube2-BJkAdPsakfk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;BJkAdPsakfk&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/BJkAdPsakfk?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><div><hr></div><h2>Your CFO doesn&#8217;t care about your F1 score</h2><p>It sounds harsh, but it&#8217;s a useful mental model.</p><p>Leadership is not buying &#8220;quality.&#8221; They&#8217;re buying outcomes: retention, expansion, lower cost to serve, and reduced risk. Quality only matters insofar as it changes those.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!PeLi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!PeLi!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png 424w, /__u/substackcdn.com/image/fetch/$s_!PeLi!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png 848w, /__u/substackcdn.com/image/fetch/$s_!PeLi!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png 1272w, /__u/substackcdn.com/image/fetch/$s_!PeLi!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!PeLi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png" width="463" height="364.20556640625" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1611,&quot;width&quot;:2048,&quot;resizeWidth&quot;:463,&quot;bytes&quot;:6409104,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3376dbc-9a5c-4bc7-a796-9ccb83ec1477_2048x2048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!PeLi!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png 424w, /__u/substackcdn.com/image/fetch/$s_!PeLi!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png 848w, /__u/substackcdn.com/image/fetch/$s_!PeLi!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png 1272w, /__u/substackcdn.com/image/fetch/$s_!PeLi!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb84827a6-7af3-4f13-aff9-2ee3135c9845_2048x1611.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If you want AI investments to be legible outside the engineering team, you need to be able to answer three questions:</p><p>What changed in the product?<br>What changed for users?<br>What changed for the business?</p><p>Most teams can answer the first one. Many can answer the second. Very few can answer the third with any confidence, especially on a tight timeline.</p><div><hr></div><h2>Levels: where most teams actually are</h2><p>I like framing this as three levels, because it makes the gap obvious without making it personal.</p><p><strong>Level 1: Shipping blind.</strong> You ship AI features, but you don&#8217;t measure quality directly. You rely on user complaints, intuition, and a handful of ad hoc checks. It&#8217;s hard to make confident investment decisions.</p><p><strong>Level 2: AI quality confident.</strong> You ship AI and you&#8217;re confident in measuring AI quality with consistent metrics and processes. You can defend quality, but business impact is still fuzzy.</p><p><strong>Level 3: Business connected.</strong> You ship AI, measure quality reliably, and you can calculate impact on business outcomes. You can connect improvements to expansion, retention, or cost reduction with real numbers and uncertainty bounds.</p><p>Most teams are between Level 1 and Level 2. The goal is to reach Level 3, because that&#8217;s when AI work stops being a constant justification battle and starts looking like a disciplined product and engineering loop.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!NhJE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!NhJE!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png 424w, /__u/substackcdn.com/image/fetch/$s_!NhJE!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png 848w, /__u/substackcdn.com/image/fetch/$s_!NhJE!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png 1272w, /__u/substackcdn.com/image/fetch/$s_!NhJE!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!NhJE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png" width="1456" height="415" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:415,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:200084,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!NhJE!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png 424w, /__u/substackcdn.com/image/fetch/$s_!NhJE!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png 848w, /__u/substackcdn.com/image/fetch/$s_!NhJE!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png 1272w, /__u/substackcdn.com/image/fetch/$s_!NhJE!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446037e4-3227-4396-9bd0-b95defd6ecab_2160x616.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>AI quality is not customer value</h2><p>A lot of confusion comes from mixing these two.</p><p>AI quality answers: <em>is the output better?</em><br>Customer value answers: <em>did the user&#8217;s job get easier?</em></p><p>Those sound similar until you ship something and realize they diverge all the time.</p><p>Quality metrics tend to look like correction rate, acceptance rate, error rate. They&#8217;re useful, but they&#8217;re not the outcome. You can drive those metrics up while the user still struggles to finish the job, because the workflow is still slow, confusing, or requires too much manual repair.</p><p>Customer value metrics tend to look like time to finish the task, time to a correct deliverable, task success rate. These are harder to instrument well, but they map to what users actually feel.</p><p>A simple rule of thumb that&#8217;s helped a lot of teams: </p><blockquote><p><em>if a metric can improve while the user experience stays painful, it&#8217;s not customer value.</em></p></blockquote><div><hr></div><h2>Business impact means profit, not &#8220;better product metrics&#8221;</h2><p>The next confusion is assuming customer value automatically means business impact.</p><p>Sometimes it does. Sometimes it doesn&#8217;t.</p><p>Product metrics can go up while business outcomes go down. A feature can increase usage and also increase cost to serve. It can improve satisfaction and still fail to move retention. It can boost engagement while margins get crushed by compute costs and support load.</p><p>This is why business impact metrics tend to be boring and finance-shaped.</p><p>Revenue-side metrics: expansion, retention, revenue per account.<br>Cost-side metrics: cost to serve, support load, compute and operational cost.</p><p>That framing matters because it keeps you honest. &#8220;Impact&#8221; is not a vibe. It&#8217;s profit under constraints.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!FDg2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!FDg2!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png 424w, /__u/substackcdn.com/image/fetch/$s_!FDg2!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png 848w, /__u/substackcdn.com/image/fetch/$s_!FDg2!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png 1272w, /__u/substackcdn.com/image/fetch/$s_!FDg2!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!FDg2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png" width="450" height="602.6785714285714" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:450,&quot;bytes&quot;:5339886,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!FDg2!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png 424w, /__u/substackcdn.com/image/fetch/$s_!FDg2!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png 848w, /__u/substackcdn.com/image/fetch/$s_!FDg2!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png 1272w, /__u/substackcdn.com/image/fetch/$s_!FDg2!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c24db33-7c03-4e36-9589-1af2c6847e83_1792x2400.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>Common failure modes</h2><p>These three statements have killed more AI budgets than any technical failure.</p><ol><li><p>&#8220;<strong>The model got better.</strong>&#8221;<br>You have impressive offline improvements, but you can&#8217;t show users benefited in real workflows. Leadership asks why they should keep investing.</p></li><li><p>&#8220;<strong>Users seemed happier.</strong>&#8221;<br>Feedback is positive, but you can&#8217;t show retention or expansion lift. The business case stays unclear.</p></li><li><p>&#8220;<strong>Revenue moved.</strong>&#8221;<br>You see correlation after a launch, but you can&#8217;t explain why. The result isn&#8217;t reusable for future decisions, and prioritization becomes political.</p></li></ol><p>These are not bad intentions. They&#8217;re broken chains.</p><div><hr></div><h2>The AI Impact Chain</h2><p>Here&#8217;s the framework that fixes the chain.</p><p>Feature change &#8594; AI quality &#8594; customer value &#8594; business impact</p><p>It&#8217;s four links. Nothing fancy.</p><p>The point is that each link must be measurable, because leadership will only trust the conclusion if the story is complete. If any link breaks, you&#8217;re guessing. If all links hold, you&#8217;re proving.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!cY_M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!cY_M!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png 424w, /__u/substackcdn.com/image/fetch/$s_!cY_M!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png 848w, /__u/substackcdn.com/image/fetch/$s_!cY_M!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png 1272w, /__u/substackcdn.com/image/fetch/$s_!cY_M!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!cY_M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png" width="1456" height="700" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:700,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:143988,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!cY_M!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png 424w, /__u/substackcdn.com/image/fetch/$s_!cY_M!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png 848w, /__u/substackcdn.com/image/fetch/$s_!cY_M!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png 1272w, /__u/substackcdn.com/image/fetch/$s_!cY_M!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa16974f8-17b5-4a3f-a7fb-1e1582a224c0_1606x772.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>Case study: a text-to-SQL rollout decision</h2><p>Let&#8217;s make this concrete with a realistic scenario: a text-to-SQL AI analyst.</p><p><strong>Workflow:</strong> ask a question &#8594; AI writes SQL &#8594; runs query &#8594; chart &#8594; export.<br><strong>Business model:</strong> seat-based pricing. Expansion is the growth lever. Assume $200 per seat per month.</p><p>A team builds a V2 that changes the SQL generation approach. It&#8217;s behind a rollout flag for a subset of users, and you have to decide: </p><ol><li><p>roll out further, </p></li><li><p>hold, </p></li><li><p>or roll back.</p></li></ol><p>V1 is single-pass SQL generation.<br>V2 uses multi-step reasoning with validation.</p><p>It adds a plan step, more structured schema grounding, and a validation loop that repairs when needed. It also uses more compute per question.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!SvCd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!SvCd!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png 424w, /__u/substackcdn.com/image/fetch/$s_!SvCd!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png 848w, /__u/substackcdn.com/image/fetch/$s_!SvCd!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png 1272w, /__u/substackcdn.com/image/fetch/$s_!SvCd!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!SvCd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png" width="1456" height="400" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:400,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:142288,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!SvCd!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png 424w, /__u/substackcdn.com/image/fetch/$s_!SvCd!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png 848w, /__u/substackcdn.com/image/fetch/$s_!SvCd!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png 1272w, /__u/substackcdn.com/image/fetch/$s_!SvCd!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcb6ea20-1514-4947-b48e-52d357d8401f_2096x576.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This is a familiar trade-off. The change plausibly improves correctness, but it may hurt latency and cost.</p><div><hr></div><h2>The metrics disagree</h2><p>You don&#8217;t get a clean dashboard that resolves the choice. You get a messy pile of signals.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!1xuh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!1xuh!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png 424w, /__u/substackcdn.com/image/fetch/$s_!1xuh!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png 848w, /__u/substackcdn.com/image/fetch/$s_!1xuh!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png 1272w, /__u/substackcdn.com/image/fetch/$s_!1xuh!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!1xuh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png" width="1456" height="455" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:455,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:149688,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!1xuh!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png 424w, /__u/substackcdn.com/image/fetch/$s_!1xuh!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png 848w, /__u/substackcdn.com/image/fetch/$s_!1xuh!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png 1272w, /__u/substackcdn.com/image/fetch/$s_!1xuh!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dfb1d8b-f381-46ae-8cfb-bc7fb5629de7_2098x656.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>First: response latency (p95), how long it takes the AI to generate SQL.</p><p>V1: 30 seconds<br>V2: 120 seconds</p><p>If you stop here, you roll back V2, because four times slower is scary and very visible.</p><p>Then: user edits per query, how many manual fixes users make before the SQL is usable.</p><p>V1: 2.4 edits<br>V2: 0.3 edits</p><p>Now the story changes. The model is slower, but it&#8217;s closer to one-shot SQL, which might reduce rework.</p><p>Then: SQL fails to run (syntax error rate).</p><p>V1: 20%<br>V2: 23%</p><p>That&#8217;s a regression again.</p><p>Then: precision on Customer Support questions, measured via labeled error analysis.</p><p>V1: 50%<br>V2: 75%</p><p>Nice improvement.</p><p>Then: precision on Finance questions.</p><p>V1: 40%<br>V2: 30%</p><p>Regression.</p><p>At this point, most teams do the predictable thing. They argue about which quality metrics matter, which segment is more important, and whether the latency regression is acceptable. The decision ends up being driven by politics or fear.</p><p>This is exactly where the Impact Chain tells you what to do next.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!lyYf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!lyYf!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png 424w, /__u/substackcdn.com/image/fetch/$s_!lyYf!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png 848w, /__u/substackcdn.com/image/fetch/$s_!lyYf!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png 1272w, /__u/substackcdn.com/image/fetch/$s_!lyYf!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!lyYf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png" width="1456" height="662" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:662,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:97640,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!lyYf!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png 424w, /__u/substackcdn.com/image/fetch/$s_!lyYf!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png 848w, /__u/substackcdn.com/image/fetch/$s_!lyYf!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png 1272w, /__u/substackcdn.com/image/fetch/$s_!lyYf!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68921c79-88d3-404d-bba4-32e5b2d77b5a_1602x728.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>When AI quality signals conflict, you move down the chain.</p><div><hr></div><h2>Customer value breaks the tie</h2><p>When quality metrics conflict, you need a customer value metric that represents the user&#8217;s workflow outcome.</p><p>In this scenario, the customer value metric is:</p><p>Time to correct chart export.<br>Time from initial query to exporting a usable chart, including all user corrections.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!8JLs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!8JLs!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png 424w, /__u/substackcdn.com/image/fetch/$s_!8JLs!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png 848w, /__u/substackcdn.com/image/fetch/$s_!8JLs!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png 1272w, /__u/substackcdn.com/image/fetch/$s_!8JLs!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!8JLs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png" width="1234" height="462" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:462,&quot;width&quot;:1234,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:74228,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!8JLs!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png 424w, /__u/substackcdn.com/image/fetch/$s_!8JLs!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png 848w, /__u/substackcdn.com/image/fetch/$s_!8JLs!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png 1272w, /__u/substackcdn.com/image/fetch/$s_!8JLs!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdf34133-ee5f-4e02-baa9-6c5a713917c0_1234x462.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This metric absorbs the whole experience. It includes latency, retries, edits, failures, and the general friction of getting to &#8220;job done.&#8221;</p><p>Now the decision becomes clear.</p><p>V1: 12.0 minutes<br>V2: 3.0 minutes</p><p>V2 accelerates the workflow by 4x, cutting completion time from 12 minutes to 3 minutes.</p><p>Latency still matters. It&#8217;s just not the outcome.</p><p>A slower first response can still lead to a faster end-to-end workflow if it prevents rework, and rework is where users bleed time and patience.</p><div><hr></div><h2>Experiments teach relationships, not just lift</h2><p>There&#8217;s a second payoff here.</p><p>Experiments don&#8217;t just tell you whether a feature worked. They teach you how AI quality drives customer value, which is what you need if you want to move faster over time.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!iA8S!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!iA8S!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png 424w, /__u/substackcdn.com/image/fetch/$s_!iA8S!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png 848w, /__u/substackcdn.com/image/fetch/$s_!iA8S!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png 1272w, /__u/substackcdn.com/image/fetch/$s_!iA8S!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!iA8S!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png" width="392" height="525" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1950,&quot;width&quot;:1456,&quot;resizeWidth&quot;:392,&quot;bytes&quot;:5723697,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!iA8S!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png 424w, /__u/substackcdn.com/image/fetch/$s_!iA8S!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png 848w, /__u/substackcdn.com/image/fetch/$s_!iA8S!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png 1272w, /__u/substackcdn.com/image/fetch/$s_!iA8S!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c5e480-ecde-4858-9a24-4722ad2c4111_1792x2400.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For example, in this scenario:</p><p>When edits decreased by 87.5%, workflow time decreased by 75%.</p><p>That&#8217;s useful because it lets you do three pragmatic things:</p><p>You can predict customer impact from quality signals earlier.<br>You can prioritize improvements that move the needle, instead of chasing generic quality.<br>You can build trust by showing causation, not correlation.</p><p>Over time, this is how teams stop doing &#8220;quality theatre&#8221; and start doing repeatable engineering.</p><p><em>By the way, we&#8217;re teaching a <strong>free</strong> workshops on Designing Experiments for AI Features later this month</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!n_Xj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!n_Xj!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png 424w, /__u/substackcdn.com/image/fetch/$s_!n_Xj!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png 848w, /__u/substackcdn.com/image/fetch/$s_!n_Xj!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png 1272w, /__u/substackcdn.com/image/fetch/$s_!n_Xj!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!n_Xj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png" width="528" height="343.2" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d5776112-d878-4a15-b68a-771891561268_1040x676.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:676,&quot;width&quot;:1040,&quot;resizeWidth&quot;:528,&quot;bytes&quot;:60272,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce0a0086-638a-4bb9-bdef-b8154f789f49_1040x906.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!n_Xj!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png 424w, /__u/substackcdn.com/image/fetch/$s_!n_Xj!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png 848w, /__u/substackcdn.com/image/fetch/$s_!n_Xj!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png 1272w, /__u/substackcdn.com/image/fetch/$s_!n_Xj!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5776112-d878-4a15-b68a-771891561268_1040x676.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/ba14ed/design-experiments-for-ai-features?utm_medium=ll_share_link&amp;utm_source=instructor&quot;,&quot;text&quot;:&quot;Join Free Workshop&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/ba14ed/design-experiments-for-ai-features?utm_medium=ll_share_link&amp;utm_source=instructor"><span>Join Free Workshop</span></a></p><p></p><div><hr></div><h2>Business impact lags, but decisions cannot wait</h2><p>Here&#8217;s the hard part.</p><p>Business outcomes like seat expansion and revenue show up months to quarters later. You can&#8217;t freeze product decisions for that long, and long experiments kill velocity.</p><p>So the practical solution is:</p><ol><li><p>Measure customer value now, in days.</p></li><li><p>Use causal inference on historical data to estimate how that value translates into business impact.</p></li><li><p>Validate later as outcomes arrive.</p></li></ol><p>Customer value becomes the leading indicator.<br>Causal methods convert it into revenue estimates.<br>You keep velocity without giving up rigor.</p><div><hr></div><h2>The 3-step pipeline: customer value to revenue</h2><p>Here&#8217;s a practical pipeline you can implement.</p><p><strong>Step 1: measure customer value.</strong><br>Example: time to correct chart export.<br>Observed change: 12 min &#8594; 3 min (9 minutes faster).</p><p><strong>Step 2: learn the relationship.</strong><br>Estimate how value changes predict seat expansion.<br>Methods: panel regression, difference-in-differences, propensity matching.</p><p>The key output here is a coefficient with uncertainty bounds, not a single &#8220;magic number.&#8221;</p><p><strong>Step 3: convert to revenue.</strong><br>Seats lift = coefficient &#215; value change.<br>Revenue lift = seats lift &#215; revenue per seat.</p><p>Using the worked example from above:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!r16c!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!r16c!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png 424w, /__u/substackcdn.com/image/fetch/$s_!r16c!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png 848w, /__u/substackcdn.com/image/fetch/$s_!r16c!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png 1272w, /__u/substackcdn.com/image/fetch/$s_!r16c!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!r16c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png" width="728" height="222.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:445,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:139669,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!r16c!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png 424w, /__u/substackcdn.com/image/fetch/$s_!r16c!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png 848w, /__u/substackcdn.com/image/fetch/$s_!r16c!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png 1272w, /__u/substackcdn.com/image/fetch/$s_!r16c!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02c03302-3b9e-4da1-9bcb-c37661f88438_2134x652.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Coefficient &#946; = 5 seats per 1 minute faster export (per account).<br>95% CI: [4, 6] seats per 1 minute.</p><p>Seats lift per account: 5 &#215; 9 = 45 seats per account.<br>Across 100 accounts: 45 &#215; 100 = 4,500 seats.</p><p>Revenue per seat: $200 per seat per month.<br>Monthly lift: 4,500 &#215; $200 = $900,000 MRR.<br>Annual lift: $10.8M ARR.<br>95% CI (annual): [$8.64M, $12.96M] ARR.</p><p>This is the difference between &#8220;we think it helped&#8221; and &#8220;here is the expected lift, here is the uncertainty, and here is how we&#8217;ll validate it over time.&#8221;</p><p><em>Annnd, we&#8217;re teaching another <strong>free</strong> workshops on Measuring AI Impact with Causal Inference later this month</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!n-7u!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!n-7u!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png 424w, /__u/substackcdn.com/image/fetch/$s_!n-7u!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png 848w, /__u/substackcdn.com/image/fetch/$s_!n-7u!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png 1272w, /__u/substackcdn.com/image/fetch/$s_!n-7u!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!n-7u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png" width="460" height="359.458413926499" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:808,&quot;width&quot;:1034,&quot;resizeWidth&quot;:460,&quot;bytes&quot;:77115,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!n-7u!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png 424w, /__u/substackcdn.com/image/fetch/$s_!n-7u!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png 848w, /__u/substackcdn.com/image/fetch/$s_!n-7u!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png 1272w, /__u/substackcdn.com/image/fetch/$s_!n-7u!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef46d2ea-6b88-4985-811c-a8a6893dd880_1034x808.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/cddd45/measure-ai-impact-with-causal-inference?utm_medium=ll_share_link&amp;utm_source=instructor&quot;,&quot;text&quot;:&quot;Join Free Workshop&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/cddd45/measure-ai-impact-with-causal-inference?utm_medium=ll_share_link&amp;utm_source=instructor"><span>Join Free Workshop</span></a></p><div><hr></div><h2>The sentence the business cares about</h2><p>If you want a simple test for whether you&#8217;ve completed the chain, write the one sentence that a business partner would actually use.</p><blockquote><p><strong>V2 is expected to increase expansion and revenue by providing faster workflows that require fewer user corrections.</strong></p></blockquote><p>That sentence is short because the chain is complete.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!vBRq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!vBRq!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png 424w, /__u/substackcdn.com/image/fetch/$s_!vBRq!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png 848w, /__u/substackcdn.com/image/fetch/$s_!vBRq!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png 1272w, /__u/substackcdn.com/image/fetch/$s_!vBRq!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!vBRq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png" width="1058" height="662" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:662,&quot;width&quot;:1058,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:91327,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!vBRq!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png 424w, /__u/substackcdn.com/image/fetch/$s_!vBRq!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png 848w, /__u/substackcdn.com/image/fetch/$s_!vBRq!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png 1272w, /__u/substackcdn.com/image/fetch/$s_!vBRq!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed3870c-cbc5-438a-bfde-105a5a7f8160_1058x662.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>How to implement this without boiling the ocean</h2><p>If you try to do this across every AI surface area at once, you&#8217;ll get stuck in instrumentation and debates.</p><p>A good starting point looks like this:</p><ol><li><p>Pick one workflow where the business actually cares.</p></li><li><p>Define one customer value metric that represents &#8220;job done.&#8221;</p></li><li><p>Instrument it end to end.</p></li><li><p>Keep quality metrics as diagnostics, not the outcome.</p></li><li><p>Start learning the mapping from customer value to business outcomes, using experiments when you can and causal methods when you can&#8217;t.</p></li></ol><p>Do this a few times, and impact stops being a special project. It becomes part of the engineering loop.</p><div><hr></div><p><strong>Proposed ending block:</strong></p><p>If you want to go deeper, the full workshop recording is here:</p><p><a href="https://maven.com/p/2c0839/validate-business-impact-of-ai-features">https://maven.com/p/2c0839/validate-business-impact-of-ai-features</a></p><p>If you&#8217;d rather see the visuals, the slides are here:<br><a href="https://gamma.app/docs/Validating-Business-Impact-of-AI-Features-hqgxww6qei9qs4k">https://gamma.app/docs/Validating-Business-Impact-of-AI-Features-hqgxww6qei9qs4k</a></p><p>If you want a complete system for building and operationalizing evals in product teams, our full course <strong><a href="https://maven.com/dataneighbor/ai-evals">AI Evals for Product Development</a></strong> is here:<br><a href="https://maven.com/dataneighbor/ai-evals">https://maven.com/dataneighbor/ai-evals</a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!aD3I!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!aD3I!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png 424w, /__u/substackcdn.com/image/fetch/$s_!aD3I!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png 848w, /__u/substackcdn.com/image/fetch/$s_!aD3I!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png 1272w, /__u/substackcdn.com/image/fetch/$s_!aD3I!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!aD3I!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png" width="1192" height="236" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/af9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:236,&quot;width&quot;:1192,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:55655,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!aD3I!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png 424w, /__u/substackcdn.com/image/fetch/$s_!aD3I!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png 848w, /__u/substackcdn.com/image/fetch/$s_!aD3I!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png 1272w, /__u/substackcdn.com/image/fetch/$s_!aD3I!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf9c1996-aabf-489d-9ef1-514577ef481e_1192x236.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!wO5e!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!wO5e!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png 424w, /__u/substackcdn.com/image/fetch/$s_!wO5e!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png 848w, /__u/substackcdn.com/image/fetch/$s_!wO5e!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png 1272w, /__u/substackcdn.com/image/fetch/$s_!wO5e!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!wO5e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png" width="272" height="261.3631284916201" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:344,&quot;width&quot;:358,&quot;resizeWidth&quot;:272,&quot;bytes&quot;:24654,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186641990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!wO5e!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png 424w, /__u/substackcdn.com/image/fetch/$s_!wO5e!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png 848w, /__u/substackcdn.com/image/fetch/$s_!wO5e!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png 1272w, /__u/substackcdn.com/image/fetch/$s_!wO5e!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1785adf4-4a74-40c7-9259-8c0606247e5e_358x344.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/dataneighbor/ai-evals&quot;,&quot;text&quot;:&quot;Learn AI Evals for Product Development&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/dataneighbor/ai-evals"><span>Learn AI Evals for Product Development</span></a></p><p>Questions, or need help making the internal case for budget? <strong>Email me at shane@aieval.ai.</strong> </p><div class="directMessage button" data-attrs="{&quot;userId&quot;:113598739,&quot;userName&quot;:&quot;Shane Butler&quot;,&quot;canDm&quot;:null,&quot;dmUpgradeOptions&quot;:null,&quot;isEditorNode&quot;:true}" data-component-name="DirectMessageToDOM"></div><p><br><strong>And if you made it this for, thanks for reading! Drop me a comment below and I&#8217;ll message you a promo code to our AI Evals cohort :D</strong><br></p>]]></content:encoded></item><item><title><![CDATA[How to Get the Most Out of AI Data Tools Without Getting Burned]]></title><description><![CDATA[With LiveDocs Founder Arsalan Bashir]]></description><link>https://dataneighbor.substack.com/p/how-to-get-the-most-out-of-ai-data-tools</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/how-to-get-the-most-out-of-ai-data-tools</guid><dc:creator><![CDATA[Hai Guan]]></dc:creator><pubDate>Fri, 30 Jan 2026 15:43:18 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/cpKcnyf0LcA" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-cpKcnyf0LcA" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;cpKcnyf0LcA&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/cpKcnyf0LcA?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Most people treat AI data assistants like magic boxes. You type in a question, get back some SQL and a chart, and ship it. This works until you realize the join was wrong or the AI misunderstood your business logic.</p><p>Arsalan Bashir, founder of LiveDocs, spent six years building AI-powered data tools. In our conversation, he walked through what actually works when you&#8217;re using AI to analyze data. Not the hype stuff, the practical things that separate teams getting real value from teams wasting tokens on bad outputs.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><h2>The context loading problem nobody talks about</h2><p>Here&#8217;s something counterintuitive. When you ask an AI to write SQL, your first instinct is probably to feed it your database schema and data types. That&#8217;s actually the wrong move.</p><p>Arsalan explained that most AI data tools already infer schema and data types at runtime. You&#8217;re burning context window space on information that&#8217;s already there. What the AI actually needs is the stuff it can&#8217;t figure out on its own: how your tables relate to each other, what the business logic is, which fields reference what.</p><p><strong>In LiveDocs, they tackled this with an indexing system.</strong> Instead of reading your documentation in real-time, the AI indexes your data sources in the background. It looks at your tables, writes descriptions, creates embeddings, and asks clarifying questions upfront. Think of it like code coverage for your data warehouse.</p><p>The metric Arsalan watches is coverage percentage. How much of your data has the AI actually looked at and understood? The higher that number, the better your results. A random question against an unindexed warehouse gives you random output. A question against a fully indexed system with clear relationships defined? That&#8217;s where things actually work.</p><h2>Prompting for data work is its own skill</h2><p>Arsalan called prompting the most important skill for working with AI data tools, and the gap between good and bad prompts is massive.</p><p>Here&#8217;s his advice: Don&#8217;t dump everything into the prompt. The AI will get what it needs from your indexed sources. Instead, focus on describing relationships and business context that aren&#8217;t obvious from looking at the raw data.</p><p>For LiveDocs, they built a prompting guide that works even if you&#8217;re using ChatGPT or another tool. The key insight is understanding what the AI already has access to versus what you need to explicitly provide.</p><p>Different models are better at different things. An image model can look at a chart and tell you it&#8217;s trending up. But for writing complex SQL or doing multi-step analysis, you want a coding-specific model like Codex or one of the frontier models (Claude Opus, GPT-4, etc.). For summarizing findings or writing stakeholder updates, a faster model with better context handling works fine.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><h2>Always review what the AI did</h2><p>This sounds obvious but most people don&#8217;t do it properly. Arsalan said there&#8217;s no such thing as zero-shot data analysis. You can&#8217;t just take what the model gives you and call it done.</p><p>The review step isn&#8217;t just checking for bugs in the SQL. You need to understand if the AI actually met your objective. If it didn&#8217;t, figure out what to adjust in your prompt or in the context you provided.</p><p>Arsalan compared it to reviewing a pull request, but instead of just looking for logical errors, you&#8217;re asking: &#8220;Did this solve my actual problem? If not, what context was missing?&#8221;</p><p>He mentioned they&#8217;re looking at building PR-style workflows for AI-generated analysis. The output goes into a PR, team members can review it, suggest changes, and then merge it once it&#8217;s solid. This creates a clear audit trail and catches problems before they become decisions.</p><h2>The BI tool trap</h2><p>When Arsalan started building LiveDocs six years ago, they were making a traditional BI tool. No-code interface, drag-and-drop charts, the whole thing. The idea was that non-technical people could self-serve their analytics.</p><p>Then LLMs happened and everything changed.</p><p>The problem with BI tools is they&#8217;re a tradeoff. You get ease of use but sacrifice flexibility. You&#8217;re stuck navigating dropdown menus to do what a data analyst could write in five lines of SQL. And BI tools are really built for monitoring known insights, not exploring new questions.</p><p>AI flipped this completely. Now non-technical people can get the flexibility of code without writing it themselves. The complexity is abstracted away but the power is still there.</p><p>Arsalan said the question they keep asking is: &#8220;What does data work look like five years from now?&#8221; They&#8217;re not trying to glue chat interfaces onto existing BI tools. They&#8217;re building from scratch for that future state.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!wTOq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!wTOq!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png 424w, /__u/substackcdn.com/image/fetch/$s_!wTOq!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png 848w, /__u/substackcdn.com/image/fetch/$s_!wTOq!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png 1272w, /__u/substackcdn.com/image/fetch/$s_!wTOq!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!wTOq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png" width="1456" height="822" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:822,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1362044,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/186157005?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!wTOq!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png 424w, /__u/substackcdn.com/image/fetch/$s_!wTOq!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png 848w, /__u/substackcdn.com/image/fetch/$s_!wTOq!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png 1272w, /__u/substackcdn.com/image/fetch/$s_!wTOq!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82649384-b68e-406c-933d-86ca0fabbe54_2452x1384.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2>What you should actually focus on</h2><p><strong>First, learn to prompt properly.</strong> Understand what context the AI needs versus what it already has. Focus on relationships and business logic, not raw schemas.</p><p><strong>Second, set up good indexing.</strong> Whether you&#8217;re using LiveDocs or another tool, make sure the AI has actually looked at your data sources and understands them. Coverage matters.</p><p><strong>Third, always review the output.</strong> Check if it solved your actual problem. Adjust your prompts and context based on what didn&#8217;t work.</p><p><strong>Fourth, understand which models are good at what.</strong> Complex analysis needs stronger coding models. Summaries and explanations work fine with faster models.</p><p>The gap between teams doing this well and teams doing it poorly is going to be enormous. Not because the technology isn&#8217;t ready, but because most people are using it wrong.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.com/&quot;,&quot;text&quot;:&quot;Join Our Free Live Lessons&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://dataneighbor.com/"><span>Join Our Free Live Lessons</span></a></p><h2><strong>Ready to level up your analytics skills?</strong></h2><p>We&#8217;re offering two new learning opportunities:</p><p><strong>Free workshops:</strong> We&#8217;re running a series on AI evaluation and agentic analytics. Topics include analyzing product data with no-code tools, designing AI evaluation plans, creating custom annotation tools, and more. Full schedule at dataneighbor.com.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.com/&quot;,&quot;text&quot;:&quot;Join Our Free Live Lessons&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://dataneighbor.com/"><span>Join Our Free Live Lessons</span></a></p><p><strong>Cohort-based courses:</strong></p><ul><li><p><strong><a href="https://maven.com/dataneighbor/ai-analytics-for-builders">AI Analytics for Builders</a>:</strong> Learn to leverage AI to become your own product data scientist, or magnify your impact as a data scientist. Claim your <a href="https://maven.com/p/f63136/claim-your-launch-code-for-ai-analytics-for-builders?utm_medium=lead_magnet_share_link&amp;utm_source=instructor">20% discount here</a>.</p></li><li><p><strong><a href="https://maven.com/dataneighbor/ai-evals">AI Evaluations for Product Development</a>:</strong> Learn to measure the actual impact of AI features on user and business outcomes. Claim your <a href="https://maven.com/dataneighbor/ai-evals?promoCode=ai-evals-20">20% discount here</a>.</p></li></ul><p>Both are hands-on, practical, 5-6 week programs where you&#8217;ll work with us and other practitioners in the field. Check it out at <a href="http://dataneighbor.com/">dataneighbor.com</a>.</p>]]></content:encoded></item><item><title><![CDATA[Get 85% Off AI Analytics for Builders (Ends Jan 27 at 5pm PT)]]></title><description><![CDATA[Most teams don&#8217;t have an analytics problem.]]></description><link>https://dataneighbor.substack.com/p/stop-waiting-on-analysts-to-answer</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/stop-waiting-on-analysts-to-answer</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Tue, 27 Jan 2026 01:04:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!U-o1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Most teams don&#8217;t have an analytics problem.</p><p>They have a <strong>latency problem</strong>.</p><p>A product question shows up in a planning meeting and the answer gets stuck in a queue.<br>By the time it comes back, the decision window has moved.</p><p>So we built <strong><a href="https://maven.com/dataneighbor/ai-analytics-for-builders">AI Analytics for Builders</a></strong>.</p><div><hr></div><h2>24-hour launch offer (ends Jan 27 at 5pm PT)</h2><p>To kick off enrollment, we need 5 students to sign up right away. Once we have those early students, Maven is more likely to surface the course more broadly on their site.</p><p>So, for the next 24 hours, we&#8217;re running a launch draw for Substack readers:</p><ul><li><p><strong>5 people</strong> will be selected at random to get <strong>85% off</strong> and enroll for <strong>$180</strong> (normally <strong>$1,200</strong>)</p></li><li><p><strong>Everyone else</strong> who applies gets a <strong>40% off code</strong> as a thank you</p></li><li><p>If you&#8217;re selected for the $180 offer, you&#8217;ll agree to post a short note on LinkedIn that you enrolled (we&#8217;ll provide templates)</p></li></ul><p>Even if you&#8217;re not one of the 5 selected for 85% off, you&#8217;ll still receive the <strong>40% code</strong> for applying.</p><p><strong>Apply here</strong>: <a href="https://forms.gle/suN4h5f1vAw32GTm9">https://forms.gle/suN4h5f1vAw32GTm9</a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://forms.gle/suN4h5f1vAw32GTm9&quot;,&quot;text&quot;:&quot;Apply for 85% Off&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://forms.gle/suN4h5f1vAw32GTm9"><span>Apply for 85% Off</span></a></p><div><hr></div><p></p><h2>What AI Analytics for Builders is</h2><p><strong>AI Analytics for Builders</strong> is a live cohort-based course on Maven to help you build analytical independence, using AI as your analysis partner.</p><p>It&#8217;s for <strong>PMs, designers, engineers, and leaders</strong> who want to answer their own product questions fast. Or <strong>data analysts</strong> and <strong>data scientists</strong> who want higher to increase leverage.</p><p>No SQL required.<br>No stats lectures.<br><strong>Five weeks</strong> of hands-on work with real scenarios.</p><p>The goal is not to turn you into a full-time analyst.</p><p>The goal is to help you operate with <strong>Product Data Scientist-level independence</strong>: move from question &#8594; analysis &#8594; decision without waiting in a queue.</p><h2>What you&#8217;ll do in the course</h2><p>In the course, you&#8217;ll use AI to:</p><ul><li><p>Answer &#8220;what should we do next?&#8221; with data</p></li><li><p>Spec metrics your team can ship</p></li><li><p>Diagnose KPI movement without guessing</p></li><li><p>Communicate the why in a stakeholder-ready narrative</p></li><li><p>Turn analysis into experiments and decisions</p></li></ul><p>A concrete example of the workflow you&#8217;ll practice:</p><p>A KPI drops. You isolate which segment moved. You generate a short set of testable hypotheses. Then you translate that analysis into a clear recommendation and the next product decision.</p><h2>Cohort dates</h2><p>Next cohort runs <strong>Apr 20 to May 24, 2026</strong>.</p><p>If you want to make faster product decisions, this is the best deal we&#8217;ll offer.</p><p>Course Link (details): <a href="https://maven.com/dataneighbor/ai-analytics-for-builders">https://maven.com/dataneighbor/ai-analytics-for-builders</a><br>Form Link (apply by <strong>Jan 27 at 5pm PT</strong>): <a href="https://forms.gle/suN4h5f1vAw32GTm9">https://forms.gle/suN4h5f1vAw32GTm9</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!U-o1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!U-o1!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png 424w, /__u/substackcdn.com/image/fetch/$s_!U-o1!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png 848w, /__u/substackcdn.com/image/fetch/$s_!U-o1!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png 1272w, /__u/substackcdn.com/image/fetch/$s_!U-o1!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!U-o1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png" width="1456" height="1807" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1807,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2758910,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/185911722?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!U-o1!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png 424w, /__u/substackcdn.com/image/fetch/$s_!U-o1!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png 848w, /__u/substackcdn.com/image/fetch/$s_!U-o1!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png 1272w, /__u/substackcdn.com/image/fetch/$s_!U-o1!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3606ce33-27a3-4656-b9e7-2fe32ced60b3_1856x2304.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p>]]></content:encoded></item><item><title><![CDATA[How Collaborative AI Analytics are Revamping Data Work]]></title><description><![CDATA[And Why the Best Data Teams Are Becoming Problem-Solving Squads (with Ollie Hughes)]]></description><link>https://dataneighbor.substack.com/p/how-collaborative-ai-analytics-are</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/how-collaborative-ai-analytics-are</guid><dc:creator><![CDATA[Hai Guan]]></dc:creator><pubDate>Thu, 22 Jan 2026 21:00:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/nvzFwkkltTA" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-nvzFwkkltTA" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;nvzFwkkltTA&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/nvzFwkkltTA?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>The CEO has a problem. Revenue&#8217;s down 15% this quarter. Who do they call?</p><p>If your answer is &#8220;the data team,&#8221; you&#8217;re thinking about analytics the right way. If your answer is &#8220;wait for the weekly dashboard refresh,&#8221; you&#8217;re stuck in the old model.</p><p>Ollie Hughes, co-founder of Count, spent years as a management consultant going into factories across Europe and figuring out why production lines weren&#8217;t hitting targets. He&#8217;d show up at a can-making factory in Germany, not speaking the language, armed with a stopwatch and a notebook. His job was to make that factory run twice as fast.</p><p>What he learned there shaped how he thinks about data teams today.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><h3>The factory floor mindset</h3><p>When Ollie walked into those factories, he had to understand the entire system fast. Where&#8217;s the bottleneck? What data exists? What&#8217;s just tribal knowledge that nobody&#8217;s written down?</p><p>He&#8217;d dig through the data, trace problems back to root causes, and often find that one dial on one machine was holding back the entire operation. Turn it from two to seven, and suddenly the whole factory starts making money again.</p><p>That kind of problem-solving is what data teams should be doing for their companies. Not building dashboards. Not running reports. Solving actual business problems.</p><h3>Visualize the business first</h3><p>Ollie&#8217;s core belief: the role of a data team is to support and facilitate great business improvement. And the way you do that is by helping the business see itself clearly.</p><p>Most companies don&#8217;t have a clear view of their own growth model. They have dashboards showing metrics, sure. But they don&#8217;t have a shared mental model of how the business actually works. What drives revenue? What are the second-order effects when marketing spend goes up? How do different parts of the business connect?</p><p>Count&#8217;s approach is to build what Ollie calls a &#8220;metric tree&#8221; - a visual map of how your entire business fits together. Not just metrics on a page, but the actual relationships between them. When you can see that GMV is driven by active buyers and average order value, and those are driven by these other factors, and those are driven by these initiatives - now you&#8217;re working with a shared understanding.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!F2y2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!F2y2!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png 424w, /__u/substackcdn.com/image/fetch/$s_!F2y2!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png 848w, /__u/substackcdn.com/image/fetch/$s_!F2y2!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png 1272w, /__u/substackcdn.com/image/fetch/$s_!F2y2!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!F2y2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png" width="1456" height="815" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/df7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:815,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1819565,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/185359030?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!F2y2!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png 424w, /__u/substackcdn.com/image/fetch/$s_!F2y2!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png 848w, /__u/substackcdn.com/image/fetch/$s_!F2y2!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png 1272w, /__u/substackcdn.com/image/fetch/$s_!F2y2!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7de82a-5655-4553-ad95-99f3fcf9f002_2464x1380.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h3>Problem-solving as a team sport</h3><p>Here&#8217;s where most AI analytics tools get it wrong: they assume one person asks a question, the AI gives an answer, and that person goes off and does something with it.</p><p>But that&#8217;s not how business problems get solved. Problems get solved in rooms with multiple people, looking at the same information, debating what it means, deciding what to do.</p><p>When we saw Ollie demo Count&#8217;s AI agent, this clicked. The AI doesn&#8217;t just answer questions. It lays out the problem, breaks it into components, digs into each one, and presents everything in a way that multiple people can interact with together.</p><p>One person can ask the AI to investigate why conversion dropped. Someone else can jump in and adjust the time period. A third person can drill into a specific segment. Everyone&#8217;s looking at the same canvas, editing the same queries, building shared context in real time.</p><h3>Everything is transparent and editable</h3><p>This is critical: when the AI generates analysis, you can see exactly how it&#8217;s built. The queries are visible. The logic is traceable. You can edit any part yourself, and the AI recognizes those changes and incorporates them.</p><p>No black boxes. No &#8220;the model says so.&#8221; Just transparent analysis that anyone on the team can verify and build on.</p><p>Ollie demonstrated this by having the AI investigate a revenue dip. The AI automatically broke down the problem - was it fewer customers? Lower average order value? Changes in specific segments? It drilled into each factor, showed the data, and explained what it found.</p><p>But here&#8217;s the key: at any point, a human could step in and say &#8220;actually, look at this cohort differently&#8221; or &#8220;check this time period instead.&#8221; The AI adapts. It&#8217;s collaborative problem-solving, not automated answer-generation.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!6EWH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!6EWH!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png 424w, /__u/substackcdn.com/image/fetch/$s_!6EWH!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png 848w, /__u/substackcdn.com/image/fetch/$s_!6EWH!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png 1272w, /__u/substackcdn.com/image/fetch/$s_!6EWH!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!6EWH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1992336,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/185359030?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!6EWH!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png 424w, /__u/substackcdn.com/image/fetch/$s_!6EWH!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png 848w, /__u/substackcdn.com/image/fetch/$s_!6EWH!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png 1272w, /__u/substackcdn.com/image/fetch/$s_!6EWH!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e1a1558-036e-4825-b5c0-402a5c4ae948_2462x1374.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>The deeper you go</h3><p>One thing that stood out: Ollie mentioned the AI often goes deeper than he would himself, given time constraints. It pursues lines of investigation that a human might not have bandwidth for.</p><p>This is where AI actually helps. Not by replacing human judgment, but by doing the grunt work of checking every angle, running multiple cuts of the data, and laying out all the evidence so humans can make better decisions.</p><h3>What this means for data teams</h3><p>Ollie&#8217;s advice for data teams: position yourselves as the organization&#8217;s problem-solving squad. The CEO has a problem? You&#8217;re the people who can help think it through.</p><p>You already have the superpowers needed for this:</p><ul><li><p>Visibility across the entire business</p></li><li><p>Strong problem-solving skills</p></li><li><p>Ability to work with complex, ambiguous situations</p></li></ul><p>The challenge is making sure those strengths are visible and valued. That means defining your purpose clearly - we&#8217;re here to help the business improve- and working in ways that amplify those strengths rather than getting lost in routine reporting.</p><p>You can do this with whatever tools you have today. But as AI gets integrated into analytics workflows, the teams that will thrive are the ones who understand their role is problem-solving, not dashboard-building.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.com&quot;,&quot;text&quot;:&quot;Join Our Free Live Lessons&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://dataneighbor.com"><span>Join Our Free Live Lessons</span></a></p><h2>Ready to level up your analytics skills?</h2><p>We&#8217;re offering two new learning opportunities:</p><p><strong>Free workshops:</strong> We&#8217;re running a series on AI evaluation and agentic analytics. Topics include analyzing product data with no-code tools, designing AI evaluation plans, creating custom annotation tools, and more. Full schedule at dataneighbor.com.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.com&quot;,&quot;text&quot;:&quot;Join Our Free Live Lessons&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://dataneighbor.com"><span>Join Our Free Live Lessons</span></a></p><p><strong>Cohort-based courses:</strong></p><ul><li><p><strong><a href="https://maven.com/dataneighbor/ai-analytics-for-builders">AI Analytics for Builders</a>:</strong> Learn to leverage AI to become your own product data scientist, or magnify your impact as a data scientist. Claim your <a href="https://maven.com/p/f63136/claim-your-launch-code-for-ai-analytics-for-builders?utm_medium=lead_magnet_share_link&amp;utm_source=instructor">20% discount here</a>.</p></li><li><p><strong><a href="https://maven.com/dataneighbor/ai-evals">AI Evaluations for Product Development</a>:</strong> Learn to measure the actual impact of AI features on user and business outcomes. Claim your <a href="https://maven.com/dataneighbor/ai-evals?promoCode=ai-evals-20">20% discount here</a>.</p></li></ul><p>Both are hands-on, practical, 5-6 week programs where you&#8217;ll work with us and other practitioners in the field. Check it out at <a href="http://dataneighbor.com">dataneighbor.com</a>.</p>]]></content:encoded></item><item><title><![CDATA[Building AI That Actually Works]]></title><description><![CDATA[What Salesforce's Research Leader Taught Us About Enterprise Agents]]></description><link>https://dataneighbor.substack.com/p/building-ai-that-actually-works</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/building-ai-that-actually-works</guid><dc:creator><![CDATA[Hai Guan]]></dc:creator><pubDate>Mon, 05 Jan 2026 15:10:26 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/0a0F26KQ2q4" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><a href="https://www.linkedin.com/in/shelbyheinecke/">Shelby Heinecke</a> leads an AI research team at Salesforce. She&#8217;s spent five years figuring out what customers will need 6 to 18 months from now, which means she&#8217;s building the future while the rest of us are still catching up to the present.</p><p>We talked about how research teams work inside big companies, why most AI agents aren&#8217;t ready for real business tasks yet, and what it takes to move from impressive demos to tools people actually use.</p><div id="youtube2-0a0F26KQ2q4" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;0a0F26KQ2q4&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/0a0F26KQ2q4?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Key takeaways from our conversation:</p><p><strong>1. Research teams in companies aren&#8217;t academic labs</strong></p><p>Shelby&#8217;s team at Salesforce does research, but it&#8217;s shaped entirely by what the business needs. When Salesforce launched Agent Force as their biggest product, her team&#8217;s research aligned with pushing the boundaries of agents. The work is exploratory but always tied to an applied vision. As she put it, they&#8217;re asking what customers will need in 6, 12, or 18 months and building toward that.</p><p><strong>2. Enterprise General Intelligence is the North Star, not AGI</strong></p><p>Salesforce&#8217;s research org has a grand vision they call EGI (Enterprise General Intelligence). The goal is getting agents to perform consistently well on real enterprise tasks. Right now, everyone&#8217;s showing amazing demos, but when it comes to actual business work, agents aren&#8217;t there yet for many use cases. All the research across Salesforce&#8217;s teams points toward closing that gap.</p><p><strong>3. You can&#8217;t improve what you can&#8217;t measure</strong></p><p>Before agents can get better at enterprise tasks, we need ways to measure their performance. Salesforce has released open source benchmarks like their CRM benchmark, which tests agents on realistic customer relationship management cases. Shelby sees more of these agent benchmarks emerging over the next 6 to 12 months, which will fuel real improvement.</p><p><strong>4. Interdisciplinary teams are the only way forward</strong></p><p>Building AI that works isn&#8217;t just about model builders anymore. Shelby emphasized that you need model builders working with people who understand customer discovery, plus domain experts who can fine-tune models for specific fields. A marketing agent needs marketing experts involved in training it. A healthcare agent needs healthcare professionals. The days of AI teams working in isolation are over.</p><p><strong>5. Small language models solve real problems that big models can&#8217;t</strong></p><p>Shelby&#8217;s team works on small language models for on-device use and specific applications. These aren&#8217;t just scaled-down versions of large models. They&#8217;re purpose-built for situations where you need speed, privacy, or efficiency. The future isn&#8217;t just about making models bigger&#8212;it&#8217;s about making the right-sized model for each job.</p><p><strong>6. Embodied agents are the next ChatGPT moment</strong></p><p>Looking past the next year, Shelby sees embodied agents as the next big shift. Right now, AI agents work in virtual environments like navigating webpages or working in Salesforce. But the same technology that powers these virtual agents will soon power physical robots, drones, and more. Navigating the 3D world is harder than navigating virtual spaces, but she thinks we&#8217;ll see a breakthrough moment in the next few years, similar to what ChatGPT did for conversational AI.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="/__u/dataneighbor.substack.com/subscribe"><span>Subscribe now</span></a></p><p>The gap between AI demos and AI that does real work is still wide. But teams like Shelby&#8217;s are measuring it, closing it, and building the benchmarks that will help everyone else do the same.</p>]]></content:encoded></item><item><title><![CDATA[AI evals are becoming a product capability, not a model debugging task]]></title><description><![CDATA[As AI features scale, the hard part stops being &#8220;can we score outputs&#8221; and becomes &#8220;can the whole team use evaluation to make better product decisions.&#8221;]]></description><link>https://dataneighbor.substack.com/p/ai-evals-are-becoming-a-product-capability</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/ai-evals-are-becoming-a-product-capability</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Mon, 29 Dec 2025 19:01:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!CjJf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!CjJf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!CjJf!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png 424w, /__u/substackcdn.com/image/fetch/$s_!CjJf!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png 848w, /__u/substackcdn.com/image/fetch/$s_!CjJf!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png 1272w, /__u/substackcdn.com/image/fetch/$s_!CjJf!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!CjJf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png" width="1456" height="1035" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1035,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2718126,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/182883606?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!CjJf!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png 424w, /__u/substackcdn.com/image/fetch/$s_!CjJf!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png 848w, /__u/substackcdn.com/image/fetch/$s_!CjJf!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png 1272w, /__u/substackcdn.com/image/fetch/$s_!CjJf!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8883666a-1dbb-4840-b0eb-e05dc9f610a1_2432x1728.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Last week I wrote about a common trap: teams treat AI evaluation like a debugging loop. They watch eval metrics improve, but they still struggle to answer the question leadership ultimately asks: did better AI output change anything meaningful in the business.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;dc091d45-cfe6-4b6e-87c0-0f772097fe74&quot;,&quot;caption&quot;:&quot;A lot of what gets called &#8220;AI evaluation&#8221; right now looks like debugging. Teams are building rubrics, running error analysis, calibrating LLM-as-judge, curating test sets, and tracking regressions. This is real work, and it is often the first time a product team has had something resembling a repeatable quality loop for an AI feature.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;AI Evaluation's Missing Layer&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:113598739,&quot;name&quot;:&quot;Shane Butler&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5feb2afc-6088-4b27-892a-8f3d9cc9ec42_3062x3062.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-12-24T02:44:51.635Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!N7AZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://dataneighbor.substack.com/p/ai-evaluations-missing-layer&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:182477623,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:4221077,&quot;publication_name&quot;:&quot;Data Neighbor Newsletter&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!jx46!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe650f36b-3659-4534-bc71-1a5b9a78c3da_800x800.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>This post follows up with what &#8220;end-to-end&#8221; AI evaluation includes when you treat it as a product capability that has to hold up in production, across functions, and over time.</p><p>It is also the backbone of a six-week, hands-on cohort I&#8217;m running in <strong>April 2026</strong> on <strong><a href="https://maven.com/dataneighbor/ai-evals">AI Evals for Product Development</a></strong>.</p><div><hr></div><h3>If you are already interested in the limited pilot seats mentioned below, you can apply here now:</h3><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/fdadd4/apply-to-ai-evals-pilot-80-discount?utm_medium=lead_magnet_share_link&amp;utm_source=instructor&quot;,&quot;text&quot;:&quot;Apply to the AI Evals Pilot&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/fdadd4/apply-to-ai-evals-pilot-80-discount?utm_medium=lead_magnet_share_link&amp;utm_source=instructor"><span>Apply to the AI Evals Pilot</span></a></p><div><hr></div><h3>What teams are investing in as AI products scale</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!ppM-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!ppM-!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png 424w, /__u/substackcdn.com/image/fetch/$s_!ppM-!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png 848w, /__u/substackcdn.com/image/fetch/$s_!ppM-!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png 1272w, /__u/substackcdn.com/image/fetch/$s_!ppM-!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!ppM-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png" width="712" height="352.0879120879121" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1456,&quot;resizeWidth&quot;:712,&quot;bytes&quot;:2352805,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/182883606?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!ppM-!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png 424w, /__u/substackcdn.com/image/fetch/$s_!ppM-!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png 848w, /__u/substackcdn.com/image/fetch/$s_!ppM-!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png 1272w, /__u/substackcdn.com/image/fetch/$s_!ppM-!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7165826-ed48-4a09-9b92-b0fa92338078_2912x1440.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In 2026, more teams will ship AI features embedded in core workflows, not just demos. That shift changes the evaluation bar.</p><p>Teams need to be able to:</p><ul><li><p>instrument the right events so evaluation is reproducible</p></li><li><p>define success in terms of user value, not just output quality</p></li><li><p>translate signals into metrics with baselines, guardrails, and release criteria</p></li><li><p>run evaluation continuously through launches, iterations, and regressions</p></li><li><p>make trade-offs across quality, risk, and cost with decision-grade evidence</p></li></ul><p>In other words, evaluation becomes an internal system: people, data, processes, and artifacts that keep paying dividends as the product evolves.</p><div><hr></div><h3>What &#8220;end-to-end&#8221; covers in practice</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!vEKI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!vEKI!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png 424w, /__u/substackcdn.com/image/fetch/$s_!vEKI!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png 848w, /__u/substackcdn.com/image/fetch/$s_!vEKI!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png 1272w, /__u/substackcdn.com/image/fetch/$s_!vEKI!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!vEKI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png" width="1456" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3942747,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/182883606?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!vEKI!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png 424w, /__u/substackcdn.com/image/fetch/$s_!vEKI!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png 848w, /__u/substackcdn.com/image/fetch/$s_!vEKI!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png 1272w, /__u/substackcdn.com/image/fetch/$s_!vEKI!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97ca8dff-3c11-418d-9c50-07ceaa88796a_2912x1440.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Here is the simplest way I think about the full stack of AI evaluation, mapped to the questions product teams actually face.</p><ol><li><p><strong>Foundations</strong><br>What AI evaluation is in a product context, where AI systems fail, and what the minimum viable evaluation is for right now versus later.</p></li><li><p><strong>Instrumentation and observability</strong><br>What to log, how little is enough, how to design traces so results are reproducible, and how observability changes by system type.</p></li><li><p><strong>Interpreting output success and failure</strong><br>How to ground evaluation in user value, identify sources of ground truth, derive signals from what you already have, and scale semantic evaluation with users, experts, and LLMs.</p></li><li><p><strong>Measuring impact on user value and business outcomes</strong><br>How to translate evaluation signals into metrics, validate sensitivity and predictiveness, segment correctly, run driver analysis, and write metric specs and thresholds that can govern releases.</p></li><li><p><strong>Pipelines, experiments, and continuous validation</strong><br>How evaluation pipelines are architected, test set strategy, experiment design for stochastic systems, launch readiness, and monitoring drift and regressions.</p></li><li><p><strong>Decision-making and driving AI product impact</strong><br>How to make decisions under uncertainty, turn metrics into product actions, manage trade-offs across quality, risk, and cost, establish an operating rhythm, and communicate impact in a way that holds up.</p></li></ol><p>If you are building AI features and you look at that list, you can probably feel where you are strong and where you are exposed.</p><p>The problem is that many companies are approaching evals in silos, team by team (engineering, ML, product, QA, SMEs, data). Each group patches gaps ad hoc, without a coherent cross-functional program.</p><p>Full-stack AI evaluation is the standard I&#8217;m aiming for with the April cohort. The goal is not to teach isolated tactics, but to help teams build evaluation capability that works across product, engineering, data, and domain expertise.</p><p>To make sure the course reflects real constraints, I&#8217;m running a small pilot group from <strong>January through March 2026</strong>. This group will pressure-test selected modules, exercises, templates, and examples before the April cohort runs.</p><div><hr></div><h3>A small pilot group to pressure-test the material (Jan to Mar)</h3><p>We&#8217;ve officially opened applications for <strong>4 pilot seats</strong> for the April <strong>AI Evals for Product Development</strong> cohort.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!DUMS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!DUMS!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png 424w, /__u/substackcdn.com/image/fetch/$s_!DUMS!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png 848w, /__u/substackcdn.com/image/fetch/$s_!DUMS!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png 1272w, /__u/substackcdn.com/image/fetch/$s_!DUMS!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!DUMS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png" width="1456" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/af7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2827729,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/182883606?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!DUMS!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png 424w, /__u/substackcdn.com/image/fetch/$s_!DUMS!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png 848w, /__u/substackcdn.com/image/fetch/$s_!DUMS!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png 1272w, /__u/substackcdn.com/image/fetch/$s_!DUMS!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf7a2d35-fd87-46af-aecb-8e1b3cc65f9e_2912x1440.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The cohort is usually <strong>$1,500</strong>. Pilot seats are <strong>$300 (80% off)</strong>. This discount is in exchange for structured feedback from January through March on selected parts of the curriculum as we finalize the April cohort. <strong>Pilot seats also include full access to the April cohort.</strong></p><ul><li><p><strong>Apply here:</strong> <strong><a href="https://maven.com/p/fdadd4/apply-to-ai-evals-pilot-80-discount?utm_medium=lead_magnet_share_link&amp;utm_source=instructor">Apply to the AI Evals Pilot</a></strong></p></li><li><p>Not sure you&#8217;re a fit: <strong>comment</strong> <strong>below </strong>with your role and what you&#8217;re working on, and I&#8217;ll reply with a quick read.</p></li></ul><p>This pilot is not the full cohort experience delivered early. Think of it as an AI working group that helps pressure-test the lessons, exercises, templates, and examples against real products and real constraints.</p><div><hr></div><h3>Who this is for</h3><p>This is for practitioners who are actively shipping (or about to ship) AI features, including:</p><ul><li><p>product managers shipping AI-powered features</p></li><li><p>data scientists and analysts responsible for measurement and evaluation</p></li><li><p>engineers and ML engineers building and maintaining AI systems</p></li></ul><div><hr></div><h3>What the pilot involves</h3><ul><li><p>working sessions, interviews, and debriefs over the next ~12 weeks</p></li><li><p>pressure-testing lessons, exercises, and templates against your real AI feature and workflow</p></li><li><p>async feedback on drafts (slides, exercises, templates, examples)</p></li><li><p>a small group discussion every other week to compare approaches and learn from each other</p></li></ul><div><hr></div><h3>In return, you&#8217;ll get</h3><ul><li><p><strong>80% off</strong> the April cohort ($1,200 value)</p></li><li><p>early access to the material and resource pack before April</p></li><li><p>more 1:1 time applying the approach to your specific use case</p></li><li><p>direct influence on what gets emphasized, clarified, or cut before the cohort</p></li><li><p>full access to the April cohort: live sessions plus recordings and materials</p></li><li><p>a peer group working on similar problems in AI evaluation</p></li></ul><div><hr></div><h3>If you are already interested in the limited pilot seats mentioned above, you can apply here now:</h3><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/fdadd4/apply-to-ai-evals-pilot-80-discount?utm_medium=lead_magnet_share_link&amp;utm_source=instructor&quot;,&quot;text&quot;:&quot;Apply to the AI Evals Pilot&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://maven.com/p/fdadd4/apply-to-ai-evals-pilot-80-discount?utm_medium=lead_magnet_share_link&amp;utm_source=instructor"><span>Apply to the AI Evals Pilot</span></a></p><div><hr></div><p>And if you have any questions at all, drop them in the comment section below or feel free to reach out to me directly on <a href="https://www.linkedin.com/in/shaneausleybutler/">LinkedIn</a>.</p>]]></content:encoded></item><item><title><![CDATA[AI Evaluation's Missing Layer]]></title><description><![CDATA[A lot of what gets called &#8220;AI evaluation&#8221; right now looks like debugging.]]></description><link>https://dataneighbor.substack.com/p/ai-evaluations-missing-layer</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/ai-evaluations-missing-layer</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Wed, 24 Dec 2025 02:44:51 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!N7AZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A lot of what gets called &#8220;AI evaluation&#8221; right now looks like debugging. Teams are building rubrics, running error analysis, calibrating LLM-as-judge, curating test sets, and tracking regressions. This is real work, and it is often the first time a product team has had something resembling a repeatable quality loop for an AI feature.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!N7AZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!N7AZ!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png 424w, /__u/substackcdn.com/image/fetch/$s_!N7AZ!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png 848w, /__u/substackcdn.com/image/fetch/$s_!N7AZ!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png 1272w, /__u/substackcdn.com/image/fetch/$s_!N7AZ!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!N7AZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:426865,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/182477623?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!N7AZ!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png 424w, /__u/substackcdn.com/image/fetch/$s_!N7AZ!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png 848w, /__u/substackcdn.com/image/fetch/$s_!N7AZ!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png 1272w, /__u/substackcdn.com/image/fetch/$s_!N7AZ!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ac421e4-33b2-45f6-8230-50b598e1a147_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The problem is that once a team gets that loop in place, a second challenge shows up immediately behind it. The eval metrics start moving, the outputs look better, and the team feels momentum. Then, a month or a quarter later, the question arrives that is much harder to answer: did any of this actually change the business.</p><p>Revenue, retention, engagement, churn, support cost. Whatever your organization cares about, those outcomes do not respond to an eval score. They respond to what users do, consistently, inside a workflow.</p><p>This is not a new data science problem. There has always been an inference gap between local product changes and business-level outcomes. We ship improvements, we see short-term movement in a dashboard, and we hope those movements add up to something durable. But AI is about to make that gap harder to ignore, because it produces crisp-looking quality metrics for something that sits upstream of user behavior. When those metrics improve, it is very easy to over-interpret what they mean.</p><div><hr></div><p><em><strong>Working on AI features? Get our one-page plan for proving AI impact on the business.</strong></em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/7b095f/ai-impact-chain-planning-worksheet&quot;,&quot;text&quot;:&quot;Access the free worksheet&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/7b095f/ai-impact-chain-planning-worksheet"><span>Access the free worksheet</span></a></p><div><hr></div><p>The most common failure mode I see is not that teams cannot measure quality. It is that the story about impact is implicit. Everyone has an intuitive narrative about why quality improvements should matter, but the chain is not written down, and it is not validated link by link. When the business does not move, nobody can diagnose where the chain broke. The team either keeps shipping &#8220;quality wins&#8221; and hoping, or starts arguing about which metric matters, or slowly loses trust in evaluation entirely.</p><p>If you want AI evaluation to support product decisions, you need a second layer beyond debugging. You need measurement that forces you to answer, in explicit terms, how quality becomes value.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!eRJB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!eRJB!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!eRJB!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!eRJB!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!eRJB!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!eRJB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/df7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2877720,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/182477623?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!eRJB!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!eRJB!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!eRJB!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!eRJB!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf7a5a5f-328e-4c7f-9e8c-840e72801139_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>If AI output quality improves, what should users do differently. Will they adopt the feature more often. Will they rely on it rather than work around it. Will it reduce effort or time-to-complete. Will it reduce back-and-forth in the workflow. Those are the behaviors that translate into user value.</p><p>And if user value improves, where will you see it before you see revenue or retention. What is the proxy closest to real-world value that should move first. Then, only after those steps are established, you can make a credible claim about business outcomes, including the time horizon where you should expect to see movement.</p><p>What makes this hard is that each link can fail for a different reason. Quality can improve but adoption does not change because trust is the bottleneck. Adoption can increase but user value does not change because the feature is being used on the wrong tasks. User value can improve but business outcomes remain flat because the outcome is driven by many other forces, or because the effect is concentrated in a segment that is too small to move the aggregate. If you treat &#8220;impact&#8221; as one big question, you cannot diagnose any of this.</p><p>The simplest structure I have found is to treat impact as a chain of links you can validate:</p><blockquote><p><strong>quality &#8594; behavior &#8594; user value proxy &#8594; business outcome</strong></p></blockquote><p>This framing also changes what you need from your data. It forces you to define the unit of analysis and what &#8220;exposure&#8221; actually means. It forces you to specify the instrumentation and joins required to measure behavior and value, not just output quality. It forces you to choose validation methods per link instead of relying on correlation. And it forces you to set thresholds that would actually change a decision, which is the difference between &#8220;interesting measurement&#8221; and decision-grade evidence.</p><p>I put this into a <strong><a href="https://maven.com/p/7b095f/ai-impact-chain-planning-worksheet">one-page planning sheet</a> </strong>and I&#8217;m sharing it for free to collect feedback. If you are building customer-facing AI features and trying to prove impact beyond eval scores, you may find it useful.</p><div><hr></div><p><em><strong>Working on AI features? Get our one-page plan for proving AI impact on the business.</strong></em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/7b095f/ai-impact-chain-planning-worksheet&quot;,&quot;text&quot;:&quot;Access the free worksheet&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://maven.com/p/7b095f/ai-impact-chain-planning-worksheet"><span>Access the free worksheet</span></a></p><div><hr></div><p>If you use it, I&#8217;d genuinely love to hear what feels unclear, what feels missing, and where the chain breaks most often in your product.</p>]]></content:encoded></item><item><title><![CDATA[The Fastest Way to Lose Customers With AI]]></title><description><![CDATA[Is Your Team Ready to Scale AI? A Quick Diagnostic for AI Evaluation]]></description><link>https://dataneighbor.substack.com/p/the-1-skill-product-teams-need-in</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/the-1-skill-product-teams-need-in</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Tue, 16 Dec 2025 03:21:29 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!LG3N!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>There is a version of AI work that looks great in a demo and a version that survives in production. As more teams scale AI features, the gap between those two versions is becoming the real competitive advantage.</p><p>In 2026, as AI products scale, one capability is going to matter more than almost any specific model choice: the ability to evaluate AI features in a way that is rigorous, ongoing, and tied to product outcomes.</p><p>The encouraging part is that this capability is teachable. You do not need to be an &#8220;AI Expert&#8221;. You need a small set of analytical methods and operating habits that make improvement measurable and iteration faster.</p><p>This article breaks down what teams that operate with production-grade AI evaluation look like, and a quick diagnostic to see where your team stands today.</p><div><hr></div><p><em><strong>If you are building or scaling AI Product and want a structured way to build production-grade evaluation, we run a live cohort focused on practical, product-facing evaluation methods.</strong></em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/dataneighbor/ai-evals&quot;,&quot;text&quot;:&quot;Learn More: AI Evals for Prod Dev&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/dataneighbor/ai-evals"><span>Learn More: AI Evals for Prod Dev</span></a></p><div><hr></div><h2>AI product evaluation that holds up in production</h2><p>Most teams have some form of evaluation. The problem is that much of it is not designed for the conditions that matter for AI products.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!LG3N!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!LG3N!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!LG3N!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!LG3N!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!LG3N!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!LG3N!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:796127,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181705815?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!LG3N!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!LG3N!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!LG3N!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!LG3N!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f423c4-7795-4bd1-80a1-a8769cf8766b_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>A demo or staging evaluation tells you whether the system can produce impressive outputs on curated examples. A production evaluation tells you whether the feature is reliable across messy inputs, real user behavior, changing context, and shifting goals.</p><p>The difference determines whether your team can iterate with confidence, or whether you end up shipping, guessing, and reacting.</p><div><hr></div><h2>What AI evaluation is, in plain terms</h2><p>AI product evaluation is the system you build to answer three questions repeatedly:</p><ol><li><p>Is the feature working for users the way we intend?</p></li><li><p>Is it improving over time in the dimensions we care about?</p></li><li><p>Is that improvement translating into product and business outcomes?</p></li></ol><p>If you cannot answer those questions continuously, you do not have an evaluation loop. You probably have something closer to &#8220;vibes&#8221;.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Stay ahead with practical guides to AI evaluation and product measurement.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div><hr></div><h2>What &#8220;good&#8221; looks like</h2><p>Teams that do this well can:</p><ul><li><p><strong>Reconstruct what happened.</strong> They instrument enough context to debug failures with evidence.</p></li><li><p><strong>Measure quality in product terms.</strong> They evaluate usefulness, correctness in context, policy adherence, and user effort, not just offline scores.</p></li><li><p><strong>Prove impact.</strong> They connect evaluation improvements to outcomes like retention, conversion, deflection, time saved, escalations, and churn.</p></li><li><p><strong>Operate it weekly.</strong> Sampling, labeling, analysis, and iteration are a cadence, not a one-time pre-launch phase.</p></li></ul><p>A simple marker of maturity: </p><blockquote><p>You can point to a recurring view of AI quality trends and top failure modes, and the team agrees on what they should fix next.</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!cAf_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!cAf_!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!cAf_!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!cAf_!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!cAf_!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!cAf_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:48284,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181705815?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!cAf_!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!cAf_!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!cAf_!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!cAf_!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e690823-a2b4-4797-b211-9be4e86a31ba_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>The failure mode most teams hit</h2><p>A common trap is optimizing what is easy to measure instead of what is important.</p><p>Offline scores improve on small, controlled datasets. Stakeholders feel good. But the product does not move. Or worse, it moves in the wrong direction, because the evaluation never captured the critical edge cases, the true user context, or the real cost of certain failures.</p><p>When that happens, the signal does not show up in dashboards. It shows up later in customer support tickets, escalations, and churn.</p><div><hr></div><h2>A quick diagnostic</h2><p>Use this as a quick and light self-assessment. Teams with a strong system for evaluating the AI products, will find answering &#8220;Yes&#8221; more often than &#8220;No&#8221;. </p><h4>Product</h4><ul><li><p>Can we define &#8220;quality&#8221; for this feature in a way a new PM can apply consistently?</p></li><li><p>Do we know the top failure modes, and which ones are most harmful to users?</p></li><li><p>When quality changes, do we detect it quickly, or do we hear about it from customers first?</p></li></ul><h4>Engineering</h4><ul><li><p>Do we log enough context to reproduce failures reliably (inputs, context, outputs, user actions)?</p></li><li><p>Can we trace regressions back to a model change, prompt change, retrieval change, or data change?</p></li><li><p>Do we have an evaluation pipeline we can run repeatedly, not a one-off script?</p></li></ul><h4>Data Science &amp; Analytics</h4><ul><li><p>Do we maintain representative evaluation slices by segment, use case, and risk level?</p></li><li><p>Do we have a consistent rubric and labeling process that produces usable signal over time?</p></li><li><p>Can we tie evaluation movement to product outcomes through experiments or other causal methods?</p></li></ul><h4>Leadership</h4><ul><li><p>If the model changed tomorrow, could we say within a week whether the user experience improved or regressed?</p></li><li><p>Can we explain, in plain language, why we believe the feature is getting better?</p></li><li><p>Do we have a shared &#8220;definition of done&#8221; for shipping changes to the AI system?</p></li></ul><div><hr></div><h2>How to Build Rigor in AI Evaluation</h2><p>If you answered &#8220;no&#8221; to several questions above, you have identified the exact gaps that cause AI features to stall in production. The fastest way to turn those &#8220;no&#8217;s&#8221; into &#8220;yes&#8217;s&#8221; is not more ad hoc testing. It&#8217;s building a production-grade evaluation loop and the operating habits to run it week after week.</p><p>That is guided practice: learn the core evaluation methods, apply them to a real feature, and leave with an evaluation system your team can keep running.</p><h3>Live Cohort (most direct path)</h3><p>We built this as a practical, product-focused cohort for PMs, engineers, data scientists, researchers, and product leaders shipping AI features.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://maven.com/dataneighbor/ai-evals" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!P92e!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png 424w, /__u/substackcdn.com/image/fetch/$s_!P92e!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png 848w, /__u/substackcdn.com/image/fetch/$s_!P92e!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png 1272w, /__u/substackcdn.com/image/fetch/$s_!P92e!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!P92e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png" width="1456" height="397" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:397,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1015870,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://maven.com/dataneighbor/ai-evals&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181705815?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!P92e!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png 424w, /__u/substackcdn.com/image/fetch/$s_!P92e!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png 848w, /__u/substackcdn.com/image/fetch/$s_!P92e!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png 1272w, /__u/substackcdn.com/image/fetch/$s_!P92e!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bb4013-11c8-40fd-82c6-9f43a8f4e630_2504x682.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>By the end, you should be able to:</p><ul><li><p>define and measure quality in product terms</p></li><li><p>build a repeatable evaluation loop your team can run continuously</p></li><li><p>connect evaluation results to product and business outcomes</p></li><li><p>identify and prioritize failure modes so iteration is targeted, not random</p></li></ul><h4><strong>AI Evaluations for Product Development</strong></h4><p>6-week live cohort + certification<br>Starts April 7<br><em><strong>Learn more and register: <a href="https://maven.com/dataneighbor/ai-evals">maven.com/dataneighbor/ai-evals</a></strong></em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/dataneighbor/ai-evals&quot;,&quot;text&quot;:&quot;Learn More: AI Eval Certification&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/dataneighbor/ai-evals"><span>Learn More: AI Eval Certification</span></a></p><p>If you are not ready for the full cohort, we are also running FREE live sessions that cover key pieces of the evaluation stack:</p><p><strong>Free live sessions</strong></p><ul><li><p>Dec 17: Redesign Product Metrics for AI Evaluations.</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/98af3e/redesign-your-product-metrics-for-ai-evals&quot;,&quot;text&quot;:&quot;Register: AI Product Metrics&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/98af3e/redesign-your-product-metrics-for-ai-evals"><span>Register: AI Product Metrics</span></a></p><ul><li><p>Jan 21: Validating AI Product Impact on the Business.</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/2c0839/validating-ai-product-impact-on-the-business&quot;,&quot;text&quot;:&quot;Register: AI Product Impact&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/2c0839/validating-ai-product-impact-on-the-business"><span>Register: AI Product Impact</span></a></p><ul><li><p>Feb 11: Building Custom Annotation UIs for AI Evaluations.</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/167951/build-custom-annotation-u-is-for-ai-evals&quot;,&quot;text&quot;:&quot;Register: Build Custom Annotation UI&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/167951/build-custom-annotation-u-is-for-ai-evals"><span>Register: Build Custom Annotation UI</span></a></p><p><strong>Also coming in 2026:</strong></p><p>We are releasing a new interview series with leaders building the next generation of evaluation: <em>Measuring the Machine</em> and <em>The Analyst&#8217;s New Toolbox</em>.</p><h3>Prefer to learn by listening</h3><p>In January, the Data Neighbor Podcast is launching an exciting new series with leaders building the next generation of evaluation and AI analytics tooling: <em>&#8220;<strong>Measuring the Machine&#8221;</strong>.</em></p><p><a href="https://www.youtube.com/channel/UCLIt6e_I3ZmGLihavs0ekQQ">Subscribe to Data Neighbor on YouTube</a>, or wherever you listen to podcasts. If you want the clearest view of where evaluation is headed and how teams are building it in practice, this will be the simplest way to keep up.</p><h3>Not sure where to start?</h3><p>Reply or message me with what you are building, who uses it, and what &#8220;bad outputs&#8221; look like today. I&#8217;m always happy to brainstorm.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption"></p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Users Lie (But Turkey Sandwiches Don't)]]></title><description><![CDATA[Or the importance of testing feedback informed hypotheses with actual behavioral data]]></description><link>https://dataneighbor.substack.com/p/users-lie-but-turkey-sandwiches-dont</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/users-lie-but-turkey-sandwiches-dont</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Thu, 11 Dec 2025 18:46:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!9Cbc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When I was a young kid growing up in in San Francisco (before my family moved to Tahoe, for those of you who know me), our neighborhood felt like a real neighborhood. We knew our neighbors. The neighborhood kids were my best friends. We knew the local businesses. And the owners of those business were our friends. Funny to think about it today, how a local business felt like your neighbor too. </p><p>There was &#8220;Eddy&#8217;s,&#8221; which was the video rental place down the street. There was &#8220;Ivy&#8217;s,&#8221; the hair salon where I got my haircut. And there was &#8220;Anna and Maria&#8217;s&#8221; a small cafe around the corner. I don&#8217;t know the actual name of any of these businesses, but 30 years later I still know them by the names of their owners. <br><br>Okay maybe &#8220;Anna and Maria&#8217;s&#8221; was called &#8220;The Daily Brew&#8221;? Though that might be my childhood memory filling in gaps. To me, it was &#8220;Anna and Maria&#8217;s&#8221;.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Data Neighbor Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>This was thirty years ago. None of those places exist anymore. But at the time, that small two or three block radius between our house and my George Peabody Elementary comprised the majority of my universe.<br><br>This story is about &#8220;Anna and Maria&#8217;s", and the best turkey sandwich I ever had&#8230;.</p><p>Anna and Maria&#8217;s was nothing particularly special. A typical neighborhood coffee shop. I didn&#8217;t drink coffee at six years old, not yet. Was mostly into Snapple in those days. But they served something far more important to me at that time: their turkey sandwich.</p><p>Truly I could not find another sandwich like it. From the ages of six to eight, I tried every place in the neighborhood, thinking maybe someone else could match it. No luck. Every time it came up short. </p><p>I went home and tried to recreate it myself. Many times. Same outcome. It always felt like I was getting <em>close</em> but never hitting whatever that exact thing was that made theirs so good.</p><p>The ingredients seemed simple enough. Deli turkey. Lettuce. Tomato. Red onion. No cheese. And sprouts. I locked in on the sprouts for a long time. I was completely convinced they were the secret. At the grocery store, I made my parents buy a different type of sprout each time so I could experiment.</p><p>And yeah, the sandwiches got better. Put sprouts on your sandwiches, it&#8217;s good. I was leveling up my seven year old sandwich game. I switched breads. Toasted, Cut the tomatoes thinner. Then thicker. Tried different onions. Again cut them thinner. Different turkey. Flavored turkey. Different greens: romaine, spinach, arugala, mix, etc.</p><p>Nothing got me there. It was like chasing something I knew existed but couldn&#8217;t reproduce, no matter what combination I tried.</p><p>Finally, one day, I asked Anna and Maria directly.</p><blockquote><p>&#8220;What do you do to your sandwiches that makes them so good?&#8221;</p></blockquote><p>We walked through the ingredients. Lettuce. Tomato. Turkey. Wheat bread. Sprouts. Etc. Etc. Check. Check. Check. Check. Check. Check. Check.</p><p> And then they added one more item.</p><p><strong>&#8220;Mayonnaise. You are missing the mayonnaise.&#8221;</strong></p><p>This of course was not possible. As any reasonable child would, at this point in my life, I hated mayonnaise. Completely repulsed by it. The smell, the texture, the way it got everywhere. Oh god, when it gets too warm. Seriously, just seeing a big glob of it&#8230;</p><p>It made me gag!</p><p>So, naturally, my reaction when I heard this was an instant and certain: &#8220;No&#8221;.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!9Cbc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!9Cbc!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!9Cbc!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!9Cbc!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!9Cbc!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!9Cbc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4822545,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/180648654?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!9Cbc!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png 424w, /__u/substackcdn.com/image/fetch/$s_!9Cbc!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png 848w, /__u/substackcdn.com/image/fetch/$s_!9Cbc!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png 1272w, /__u/substackcdn.com/image/fetch/$s_!9Cbc!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb224f9d-ec6e-4c17-924e-2bdf08d7eaf2_2752x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>No, that cannot be it. There is no mayonnaise on these sandwiches.</p><p>Even though these two women were literally the ones making the sandwiches with their own hands and they with certainty knew they spread that bread with mayo&#8230;I refused to believe it.</p><p>I was very confident that Anna and Maria were mistaken.</p><p>This is how powerful preconceived beliefs about what we think we like and what we don&#8217;t like can be. </p><p>I had made up my mind years prior that mayonnaise was <em>awful</em>. And thus, the idea that the <em>best</em> sandwich I had ever tasted contained it was just <em>impossible</em>.</p><p>For many more years, I remained anti-mayonnaise. Probably until age 14 or 15<em>. (At some point, you cannot be asking everyone to remove the mayo because you are acting like a seven year old.)</em></p><p>And of course, once I finally grew up enough to revisit it, I realized the obvious.</p><p>It was, of course, the mayonnaise. </p><p>It was always the mayonnaise.</p><p>You&#8217;re all smart people, so I don&#8217;t need to connect the dots for anyone reading this, but I will anyways :)</p><p>Users tell us what they think they want.<br>Users tell us what they think they like.<br>Users tell us what they believe creates value.</p><p>There is important insight in that. It helps us form hypotheses worth testing. But the real understanding of value comes from their actions and the results of those tests. From the goals they try to achieve. From the choices they make. From the signals they generate through real behavior.<br><br>Feedback is useful for hypotheses, but it isn&#8217;t the truth.</p><p><strong>Behavior is the truth.</strong> Words just help us wrap a story around it.</p><p>Anna and Maria knew the truth. They saw the pattern. I would ask for &#8220;no mayo,&#8221; they would say &#8220;okay,&#8221; and then, knowing their customer better than he knew himself, <strong>they put it on anyway.</strong></p><p>I loved the product even when I believed I didn&#8217;t.</p><p>So don&#8217;t just listen to what I say. Watch what I eat.<br><br></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Data Neighbor Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Redesigning Metrics for AI Products]]></title><description><![CDATA[AI demands a new set of metrics. It requires evolving unreliable deterministic metrics to a systematic analytics process that rigorously ties probabilistic AI output to user value and business impact.]]></description><link>https://dataneighbor.substack.com/p/redesigning-metrics-for-ai-products</link><guid isPermaLink="false">https://dataneighbor.substack.com/p/redesigning-metrics-for-ai-products</guid><dc:creator><![CDATA[Shane Butler]]></dc:creator><pubDate>Tue, 09 Dec 2025 19:20:20 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!15bN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Most teams try to measure AI products using the same dashboards they used for deterministic software. They track engagement, time on site, or retention and hope those numbers tell them whether the model is actually helping users. Most of the time, they do not.</p><p>The deeper problem is that many product teams never had a solid foundation for deterministic metrics in the first place. They inherit a standard suite of numbers (Daily Active Users, Retention, Session Length) and then retrofit their strategy to match those templates. They optimize for &#8220;engagement&#8221; without first asking whether that signal is meaningfully tied to user success.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Data Neighbor is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>This comes from a misunderstanding of the relationship between the user and the product. A product is a delivery mechanism for a goal the user already has in their non-digital life. The user does not wake up intending to &#8220;engage&#8221; with a SaaS platform. They wake up intending to hire a candidate, debug an outage, close a deal, reconcile a budget, ship code, or finalize a contract. The application is just a tool that connects their intent (the job to be done) to an outcome (the value they realize).</p><p>Product analytics is not simply the act of tracking events. It is the engineering work of translating these invisible real-world goals into observable, queryable signals. If we struggle to do this correctly in deterministic systems where inputs reliably produce outputs, the challenge only grows when we introduce probabilistic AI models.</p><div><hr></div><p><em><strong>If you&#8217;re currently working on an AI product and want help redesigning your metrics, I&#8217;m hosting a free 30 minute live walkthrough on Redesigning Product Metrics for AI.</strong></em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/98af3e/redesign-your-product-metrics-for-ai?utm_medium=ll_share_link&amp;utm_source=instructor&quot;,&quot;text&quot;:&quot;RSVP for Live Walkthrough&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/98af3e/redesign-your-product-metrics-for-ai?utm_medium=ll_share_link&amp;utm_source=instructor"><span>RSVP for Live Walkthrough</span></a></p><div><hr></div><h1>Part I: The Measurement of Deterministic Systems</h1><p>In Part I of this guide, we establish the foundational system of metrics required for deterministic applications where the same input reliably produces the same output. Here, the main challenge is not model variance. It is the more basic problem of turning messy, real-world goals into clean, queryable signals that relate to user value and business outcomes. Once those assumptions are visible, it becomes easier to see why they break when we swap fixed logic for probabilistic models.</p><h2>I. The Mechanics of User Value Proxies</h2><p>In product development, we operate under a persistent constraint: we cannot query the user&#8217;s intent directly. User value is a latent variable. It lives in the user&#8217;s mind, not in our database.</p><h3>The Observability Constraint and the Inference Gap</h3><p>Our systems only observe physical interactions with the interface. We log events like <code>button_click</code>, <code>scroll</code>, or <code>form_submit</code>. In an online store, that might look like:</p><ul><li><p><code>product_page_viewed</code></p></li><li><p><code>add_to_cart</code></p></li><li><p><code>checkout_started</code></p></li><li><p><code>order_submitted</code></p></li></ul><p>We do not log <em>&#8220;found the right running shoes for my race&#8221;</em> or <em>&#8220;bought the right size and did not need to return it.&#8221;</em></p><p>This creates an <strong>Inference Gap</strong> between:</p><ul><li><p><strong>Observed events</strong>: what happened in the browser or app.</p></li><li><p><strong>Inferred state</strong>: whether the user actually achieved their goal.</p></li></ul><p>In a perfect world, we would have a <code>goal_achieved</code> column we could query. In practice, every metric on a dashboard is a bridge we build across this gap.</p><p>Consider a standard metric like <strong>Time on Page</strong>. On a high level dashboard, an increase in average time on a product page often looks like healthy engagement. It seems to imply that users are finding information useful and reading it carefully.</p><p>At the event level, the picture is very different. Imagine two users on the same product detail page:</p><ul><li><p><strong>User A</strong> spends five minutes reading reviews, checking the size guide, and then adds the item to their cart.</p></li><li><p><strong>User B</strong> spends five minutes scrolling up and down, tweaking filters, and hunting for basic information they cannot find before leaving the site.</p></li></ul><p>Our logging system records the same session duration for both sessions. A naive analysis counts both as &#8220;high engagement.&#8221; In reality, User A found value and User B found friction, and the log cannot distinguish between the two.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!15bN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!15bN!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!15bN!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!15bN!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!15bN!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!15bN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:80906,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!15bN!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!15bN!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!15bN!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!15bN!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc351906d-2299-4f12-86c4-3eafe531f3df_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The work is to filter this noise and identify interaction patterns that genuinely correlate with successful outcomes.</p><h3>Defining the User Value Proxy</h3><p>To cross the inference gap, we leverage <strong>User Value Proxies</strong>. These are not generic KPIs pulled from a template. They are specific, observable events or aggregates that we accept as stand-ins for the user&#8217;s real-world goal.</p><p>Choosing a proxy is an engineering trade-off between:</p><ul><li><p><strong>Accuracy</strong>: How closely does this metric track the real goal?</p></li><li><p><strong>Latency</strong>: How quickly can we observe it after a change?</p></li></ul><p>The most accurate metrics are almost always the slowest to materialize.</p><p>Recall the earlier example where two users spent the same time on a product page, but one found value and the other found friction. Time on page alone could not tell those sessions apart. To act on this, we need to move beyond surface activity and pick events that better encode the underlying goal.</p><p>For an online store, the user&#8217;s real job is not just &#8220;place an order.&#8221; It is &#8220;get the right product, have it solve the problem, and avoid returns.&#8221; A natural long-term measure is Customer Lifetime Value (LTV), which captures returns, repeat purchases, and long-term satisfaction. As a proxy for true value, LTV is strong but slow. It can take months or years to observe.</p><p>If an engineering team waited for LTV to validate a new search or ranking algorithm, their feedback loop would be unusably long. So they move upstream and select faster proxies such as:</p><ul><li><p><strong>Product-level actions</strong>: <code>add_to_cart</code>, <code>checkout_started</code>, <code>order_submitted</code></p></li><li><p><strong>Session-level aggregates</strong>: checkout conversion rate, cart completion rate</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!mB2p!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!mB2p!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!mB2p!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!mB2p!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!mB2p!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!mB2p!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:101133,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!mB2p!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!mB2p!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!mB2p!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!mB2p!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5830793-8c59-4c23-92a3-d774f69f9e71_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>These are imperfect signals of:</p><ul><li><p>Users abandon carts.</p></li><li><p>Users browse for fun.</p></li><li><p>Users buy the wrong thing and later return it.</p></li></ul><p>Despite that noise, these events arrive immediately and are correlated with long-term value often enough that teams accept them as operational truth. The implicit contract becomes:</p><blockquote><p><em>We will optimize this proxy with the expectation that improving it will also improve real user value.</em></p></blockquote><p>Once we adopt a proxy, we design features, run experiments, and make trade-offs in service of moving that number.</p><h3>The Deterministic Assumption</h3><p>This entire proxy logic relies on an important structural property of traditional software that we will later lose in AI systems.</p><p>In deterministic applications, the product behaves like a finite state machine. The same input leads to the same output:</p><ul><li><p>If a user clicks &#8220;Save,&#8221; the system persists a record.</p></li><li><p>If a user applies a &#8220;Price: Low to High&#8221; filter, the sorting algorithm runs as written, every time.</p></li><li><p>The code does not roll dice or sample from a distribution when it executes.</p></li></ul><p>In practice, real systems still have sources of noise, but at the level of application logic we treat the code as a constant <em><strong>k</strong></em>. The machine provides a stable background. When we look at our logs and see changes in user behavior, we attribute those changes to differences in user intent or to the product changes we made, not to random variation in the code path.</p><p>This<strong> Deterministic Assumption</strong> is what makes our metrics interpretable. Because the system&#8217;s logic is fixed, we can treat high activity volume as a positive signal of engagement. We trust the log because we trust that the underlying machine is rigid and predictable.</p><p>In the next sections, we build on this assumption to construct a hierarchy of metrics and a causal chain from inputs to business outcomes. Later, we will see how this structure starts to fail once we replace rigid logic with a probabilistic model.</p><h2>II. The Hierarchy of Measurement</h2><p>Once we define user value proxies, we still face a timing problem. The events we can directly influence happen in milliseconds. The business outcomes we care about often move over weeks or months.</p><p>To bridge that gap, we build a hierarchy of metrics. This is not just a flat list of KPIs. It is a causal stack where we assume that moving the bottom layer will, through the chain, move the top.</p><p>At a high level, the stack has three layers:</p><ol><li><p><strong>Input Metrics</strong>: the granular interactions and system properties we can directly change.</p></li><li><p><strong>The North Star Metric</strong>: the main user value proxy that links product behavior to value.</p></li><li><p><strong>Business Outcomes</strong>: the lagging financial signals that validate the whole structure.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!lhuK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!lhuK!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!lhuK!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!lhuK!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!lhuK!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!lhuK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:75758,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!lhuK!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!lhuK!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!lhuK!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!lhuK!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F278c1100-9108-4f40-8635-a8fa2a557733_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>We design product changes to act on the inputs, monitor the North Star to steer day to day, and use business outcomes to check whether the proxies still match reality.</p><h3>Layer 1: Input Metrics (Leading Indicators)</h3><p>At the base of the stack are the **input metrics**. These are high frequency signals that appear as raw events in the warehouse, such as:</p><ul><li><p><code>search_query_executed</code></p></li><li><p><code>profile_viewed</code></p></li><li><p><code>message_drafted</code></p></li><li><p><code>latency_ms</code></p></li></ul><p>We often call these &#8220;the levers&#8221; because they are the only quantities a team can directly influence. An engineer cannot ship code that directly increases revenue, but they can:</p><ul><li><p>Reduce search latency by 200 ms</p></li><li><p>Move a &#8220;Send Message&#8221; button into a more prominent location</p></li><li><p>Improve ranking so that the first page of results is more relevant</p></li></ul><p>Input metrics are <strong>leading indicators</strong>. They respond immediately to product changes and can move weeks before any business outcome is observable.</p><p>That speed comes with a cost. Inputs are noisy and easy to game:</p><ul><li><p>A ten percent increase in <code>profile_viewed</code> might mean better recommendations.</p></li><li><p>It might also mean we increased pagination friction and forced more clicks.</p></li><li><p>A rise in <code>messages_sent</code> might mean meaningful conversations, or it might mean spam.</p></li></ul><p>In deterministic systems, we accept this noise because we do not look at inputs in isolation. We rely on the layer above them to filter out manipulations that do not translate into real value.</p><h3>Layer 2: The North Star Metric (User Value Proxy)</h3><p>Above the chaotic stream of inputs, we define a <strong>North Star Metric</strong>. In engineering terms, this is the aggregate metric that best captures the intersection of user success and business value.</p><p>The North Star should answer a simple question:</p><blockquote><p><em>When users achieve their goal in our product, what observable event almost always occurs, and does that event also matter for the business?</em></p></blockquote><p>This is not something we can find by scanning a correlation matrix. Correlation can show coincidences in the logs, but it cannot tell us what the metric means. Defining a North Star is a hypothesis driven product decision.</p><p>We start from the job to be done, then ask what a successful session would look like in the data.</p><p>Examples:</p><ul><li><p>In a travel marketplace, we could track searches or revenue. But searches is often just browsing, and revenue is too lagged. A better North Star is <strong>Nights Booked</strong>, which marks the moment where the guest has lodging and the host earns income.</p></li><li><p>In a workplace communication tool, we could track daily active users. But that can be driven by log in requirements and does not guarantee value. A better North Star is something like <strong>Messages Sent in Active Channels</strong>, which indicates ongoing collaboration.</p></li></ul><p>Once defined, the North Star serves as the operational definition of success for the product team. It gives engineers permission to optimize low level inputs aggressively. If a change improves the North Star without harming guardrail metrics, we treat it as value creating, even before we see it in quarterly revenue.</p><h3>Layer 3: Business Outcomes (Lagging Indicators)</h3><p>At the top of the stack sit the <strong>business outcome</strong>:</p><ul><li><p>Revenue</p></li><li><p>Retention</p></li><li><p>Lifetime Value (LTV)</p></li><li><p>Churn</p></li></ul><p>For executives and the board, these are the primary measures of success. They represent the actual exchange of value between customer and company.</p><p>For product and engineering teams, these metrics are too slow to guide daily work. They are <strong>lagging indicators</strong>. By the time a customer churns, the product has already failed them. By the time LTV changes in a measurable way, months of product decisions have passed.</p><blockquote><p>We track business outcomes to validate the integrity of the metric stack.</p></blockquote><p>If the North Star goes up over a sustained period, but revenue or retention does not move, that is a circuit breaker. It tells us that our proxy for user value is misaligned. Perhaps we are pushing users toward cheaper plans, cannibalizing other products, or encouraging behavior that looks good locally but is bad globally.</p><p>We do not try to optimize business outcomes directly from sprint to sprint. Instead, we use them to periodically check whether the chain from input metrics to North Star to outcomes still holds.</p><p>In deterministic systems, this three layer hierarchy gives us a clean structure for measurement and experimentation. Inputs give us fast feedback, the North Star steers day to day, and business outcomes keep us honest over longer time scales. In the next section, we look at how to validate that the links in this chain are truly causal, not just correlated.</p><h2>III. Validating the Causal Chain</h2><p>The hierarchy of input metrics, North Star, and business outcomes is not a fact. It is a structured hypothesis about how our system creates value:</p><blockquote><p><em>If we move certain inputs,</em></p><p><em>we will move the North Star,</em></p><p><em>and that, in turn, will move business outcomes.</em></p></blockquote><p>If this chain is wrong, we can spend quarters (or years) optimizing internal metrics without improving the business or the user experience. Before we commit to optimizing the stack, we need to test whether the links are causal or merely correlated.</p><h3>Correlation vs Causation</h3><p>Every analyst knows the phrase &#8220;<em>correlation is not causation</em>,&#8221; but under pressure to improve figures on a dashboard it is easy to treat a strong correlation as a lever.</p><p>It helps to fix terms:</p><ul><li><p><strong>Correlation</strong>: A pattern in historical data. When X is high, Y tends to be high as well. This is descriptive and passive.</p></li></ul><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;X \\propto Y&quot;,&quot;id&quot;:&quot;CKIAOUYVVO&quot;}" data-component-name="LatexBlockToDOM"></div><ul><li><p><strong>Causation</strong>: A counterfactual claim. If we intervene to change X, Y will change in a predictable way. This is active and is the only relationship that matters for product changes.</p></li></ul><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;X \\rightarrow Y&quot;,&quot;id&quot;:&quot;YQJFCMZNOG&quot;}" data-component-name="LatexBlockToDOM"></div><p>Product teams get into trouble when they promote correlated metrics into targets without checking whether they are causal.</p><h3>The Correlation Trap</h3><p>Consider a professional network. A data scientist runs a query and finds a strong positive correlation <em>(r&gt;0.8)</em> between <code>profile_photo_uploaded</code> and 12-month retention:</p><blockquote><p>Users who upload a photo churn much less.</p></blockquote><p>This is attractive. It is simple to understand and easy to rally around. The organization starts treating &#8220;profile photo upload rate&#8221; as a proxy for user health.</p><p>A naive interpretation quietly upgrades the relationship from correlation to causation:</p><blockquote><p>If we increase photo uploads, retention will rise.</p></blockquote><p>The team then spends multiple quarters shipping features to push uploads:</p><ul><li><p>Gamified &#8220;profile completeness&#8221; widgets</p></li><li><p>Full-screen modals nagging for photos</p></li><li><p>Email reminders and incentives</p></li></ul><p>They succeed in driving the upload rate close to 100 percent. Six months later, retention is flat.</p><p>The problem is that they ignored a third variable, Z, such as &#8220;user motivation&#8221;:</p><ul><li><p>Highly motivated users are more likely to upload a photo.</p></li><li><p>Highly motivated users are also more likely to retain.</p></li></ul><p>In this structure:</p><ul><li><p>Z&#8594;X: Motivation drives photo upload.</p></li><li><p>Z&#8594;Y: Motivation drives retention.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!M9lS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!M9lS!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!M9lS!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!M9lS!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!M9lS!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!M9lS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:48955,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!M9lS!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!M9lS!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!M9lS!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!M9lS!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7e8b0d-42f5-4cd2-83cf-e2b47b1dccde_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The photo itself never caused retention. It was just a symptom. By forcing low motivation users to upload a photo, the team removed the signal without affecting the underlying behavior.</p><p>This is the <strong>correlation trap</strong>. We optimize a metric that is statistically connected to the outcome but structurally powerless to change it.</p><h3>Proving Causality with Experiments</h3><p>To move from correlation to causation, we need to break the link between user motivation and the action we are studying. That means creating a situation where the system, not the user, determines who takes the action.</p><p>The standard tool for this is the <strong>Randomized Controlled Trial (RCT)</strong>, usually implemented as an A/B test.</p><p>In an RCT:</p><ol><li><p>Users are randomly split into groups (Control and Treatment).</p></li><li><p>The system applies a change only to the Treatment group.</p></li><li><p>Because assignment is random, hidden factors such as motivation are, on average, balanced between groups.</p></li><li><p>Any systematic difference in outcomes can be attributed to the change.</p></li></ol><p>Returning to the photo example, a simple experiment could be:</p><ul><li><p><strong>Control</strong>: Standard onboarding flow (no special prompt for a photo).</p></li><li><p><strong>Treatment</strong>: Onboarding with a mandatory &#8220;Upload Photo&#8221; step.</p></li></ul><p>If, after this change, the Treatment group shows a clear lift in 12-month retention relative to Control, we have evidence that photo upload is causal. If retention is unchanged despite higher uploads, we have evidence that the original correlation was spurious.</p><p>In practice, teams rarely run such long experiments for slow metrics like retention. Experiments work well when outcomes materialize quickly. They are harder to use for links that play out over long horizons, such as:</p><ul><li><p>North Star &#8594; LTV</p></li><li><p>North Star &#8594; multi-year retention</p></li></ul><p>To prove causality for these relationships, we would need long-term holdouts that:</p><ul><li><p>deliberately degrade or withhold a feature for a subset of users,</p></li><li><p>maintain that difference for months or years,</p></li><li><p>and measure the impact on long-term value.</p></li></ul><p>Large consumer companies sometimes invest in these long experiments, but most teams cannot afford the opportunity cost or the timeline. They need evidence faster.</p><h3>Causal Inference on Historical Data</h3><p>When long RCTs are impractical, we still want to reason in counterfactual terms:</p><blockquote><p><em>For users who took action X, how would their outcomes have differed if they had not?</em></p></blockquote><p>We approximate that answer on historical data by:</p><ul><li><p>Making our assumptions about how the world works clear</p></li><li><p>Adjusting for the main confounders so that treated and untreated users are comparable</p></li></ul><p>The process usually starts with a simple causal diagram, often a Directed Acyclic Graph (DAG). We list the main variables and sketch arrows that represent our beliefs about cause and effect, for example:</p><ul><li><p>Seasonality &#8594; booking rate</p></li><li><p>Marketing spend &#8594; visits</p></li><li><p>User segment &#8594; likelihood of adopting a feature</p></li></ul><p>The DAG is not a mathematical object as much as a thinking tool. It forces us to name likely confounders and decide which variables we need to adjust for.</p><p>From there, most product teams can get a long way with three basic patterns rather than a full econometrics toolbox:</p><ol><li><p><strong>Regression with controls</strong></p><p>Fit a model where the outcome is a business metric and the key predictor is your candidate lever, plus control variables for obvious confounders such as segment, device, geography, or tenure. This asks: after holding these other factors constant, do changes in the candidate metric still predict changes in the outcome?</p></li><li><p><strong>Panel or Difference in Differences</strong></p><p>When you have data before and after a change, across groups that were exposed at different times, you can compare how outcomes moved over time between those groups. This helps isolate the effect of the change from background trends such as seasonality.</p></li><li><p><strong>Matching</strong></p><p>When adoption is strongly self selected, you can construct comparable groups by matching treated and untreated users with similar observable characteristics, then compare outcomes between those matched pairs. Matching does not remove all bias, but it reduces the most obvious differences.</p></li></ol><p>There are more advanced methods available, but disciplined use of these three patterns usually provides most of the value for product teams.</p><p>The goal is not to discover a perfect structural model of the business. The goal is to get closer to that counterfactual:</p><blockquote><p><em>For users who took action X, how would outcomes differ if they had not?</em></p></blockquote><p>If, after adjusting for the main confounders, movements in your North Star still predict movements in business outcomes, you can treat it as a usable lever rather than a descriptive statistic. If the relationship disappears once you control for basic factors, you should treat the metric as a symptom and keep searching for a better proxy.</p><h3>Why Causal Relationships Matter for Product Development</h3><p>Validated causal links change how we build products. Once we trust that:</p><ol><li><p>Certain inputs drive the North Star, and</p></li><li><p>the North Star drives business outcomes,</p></li></ol><p>we can treat features as hypotheses about shifting those inputs and use experiments to confirm or reject them.</p><p>In deterministic systems, this structure gives us a clean feedback loop: we can make a change, observe its impact on the metric hierarchy, and attribute the result to the change with reasonable confidence.</p><p>In the next section, we will look at how this feedback loop changes the way teams define &#8220;done&#8221; for features, and how that baseline is disrupted when we replace deterministic logic with probabilistic models.</p><h2>IV. The Deterministic Feedback Loop</h2><p>Once we define a metric hierarchy and validate its causal links, the way we build products can change. Metrics stop being a reporting artifact and become the backbone of a feedback loop.</p><p>Instead of treating features as items on a roadmap, we can treat them as hypotheses about how to move the levers in that loop.</p><h3>Feature as Hypothesis</h3><p>In many organizations, Product Requirements Documents (PRDs) describe features as deliverables:</p><ul><li><p>&#8220;Build Quick Apply.&#8221;</p></li><li><p>&#8220;Add a new dashboard.&#8221;</p></li><li><p>&#8220;Implement in-app notifications.&#8221;</p></li></ul><p>The engineering team is measured on output: </p><ul><li><p>did we ship the feature on time?</p></li><li><p>does it match the design? </p></li><li><p>does it pass QA? </p></li></ul><p>If those boxes are checked, the work is considered done, regardless of impact on users or the business.</p><p>In a hypothesis-driven model, a feature is not a requirement to fulfill; it is a causal claim:</p><blockquote><p><em>We believe that doing X will change user behavior Y, which will move metric Z.</em></p></blockquote><p>A PRD becomes a specification of a bet, not just a specification of functionality. The &#8220;definition of done&#8221; shifts accordingly:</p><ul><li><p>A change is not done when the code is merged.</p></li><li><p>It is not done when tests pass.</p></li><li><p>It is done when we have evidence about the hypothesis: either the metric moved as expected, or it did not.</p></li></ul><p>By tying each feature to a specific metric in the hierarchy (often an input metric that rolls up to the North Star), we force the team to own outcomes, not just output.</p><h4>Example: Quick Apply</h4><p>Consider a &#8220;Quick Apply&#8221; feature in a recruiting product.</p><p>A feature-factory roadmap might simply list:</p><blockquote><p>&#8220;Q3: Implement Quick Apply to improve conversion.&#8221;</p></blockquote><p>The implicit reasoning stays in people&#8217;s heads. When the feature ships, the team celebrates the launch and moves on.</p><p>In a hypothesis-driven model, we make the reasoning explicit:</p><blockquote><p><strong>Barrier</strong>: &#8220;We believe qualified candidates are dropping out because a 10-field form is too high-friction on mobile.&#8221;</p><p><strong>Bet</strong>: &#8220;If we introduce a &#8216;Quick Apply&#8217; flow that parses a resume and pre-fills fields&#8230;&#8221;</p><p><strong>Signal</strong>: &#8220;&#8230;then application completion rate (our chosen input metric) will increase by 5%.&#8221;</p></blockquote><p>We then:</p><p>1. Implement the feature.</p><p>2. Ship it behind a flag or experiment.</p><p>3. Measure its effect on the target metric and relevant guardrails.</p><p>If the metric stays flat or degrades, the feature failed the hypothesis, even if the implementation is technically perfect. The code can be bug-free and the UI polished, but if completion rate does not improve, the idea did not solve the barrier we thought it addressed.</p><p>The point is not to punish teams for failed experiments. It is to close the loop between our mental model of user behavior and the actual data.</p><h3>Metrics as a Validation Signal</h3><p>This framework also changes how teams resolve disagreements.</p><p>In an opinion-driven culture, roadmaps are often set by the highest paid person&#8217;s opinion or the most persuasive argument. A VP might insist that <em>&#8220;users hate the long form,&#8221;</em> or a designer might argue that <em>&#8220;a cleaner layout will increase engagement.&#8221;</em> The team implements the idea largely to satisfy the stakeholder.</p><p>In a hypothesis-driven culture, we still listen to that intuition, but we frame it as a testable claim:</p><blockquote><p><em>&#8220;We believe users hate the long form and that shortening it will improve completion rate by 5%.&#8221;</em></p></blockquote><p>We then design an experiment and let the data resolve the question.</p><p>Sometimes the result will contradict everyone&#8217;s expectations. We might shorten the form and see completion drop. That tells us something important about the user&#8217;s priorities: perhaps they care more about perceived seriousness and trust than speed. The feature did not just fail; it updated our model of user behavior.</p><p>Metrics, in this sense, are not only success criteria. They are a <strong>validation signal</strong> for our understanding of the user. They reduce reliance on hierarchy and intuition as the primary decision mechanisms.</p><h3>The Deterministic Advantage</h3><p>All of this rests on one structural property of traditional software that is easy to take for granted.</p><p>We can treat features as hypotheses and read metrics as validation signals because the product logic is effectively constant. The same input leads to the same output, and the system does not inject randomness into its own behavior.</p><p>We can visualize the deterministic product as a linear chain:</p><ol><li><p><strong>User Action</strong>: The user performs an input (clicks a button, submits a form).</p></li><li><p><strong>Product Logic</strong>: The code executes exactly as written.</p></li><li><p><strong>System Output</strong>: The system emits events and updates state in a predictable way.</p></li><li><p><strong>Input Metrics:</strong>  We aggregate those events into trackable metrics.</p></li><li><p><strong>Value Proxy</strong>: We observe their causal effect on our North Star.</p></li><li><p><strong>Business Outcome</strong>: Over time, those proxies drive revenue, retention, or other financial measures.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!PHck!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!PHck!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!PHck!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!PHck!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!PHck!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!PHck!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:64640,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!PHck!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!PHck!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!PHck!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!PHck!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08e4d403-7100-4890-9222-5143eeb8ff6f_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In this chain, step 2 (the product logic) is the constant. When we run an experiment, we make a controlled change to that logic and hold everything else fixed. If we then observe a change in the metrics at steps 4 and 5, we attribute it to the change we made.</p><p>This <strong>deterministic advantage</strong> is a measurement superpower:</p><ul><li><p>The system itself acts as a reliable control variable.</p></li><li><p>Any variance in the metrics can, in principle, be mapped back to user behavior or product changes, not to random fluctuations in the logic.</p></li><li><p>We can run many experiments per year because the &#8220;referee&#8221; (the system) behaves consistently.</p></li></ul><p>This is the peak of the traditional model. The machine is boring, which makes the data trustworthy.</p><p>In the next part of this guide, we will see what happens when we replace this rigid link in the chain with a probabilistic model. The moment we introduce an LLM as a core part of the product logic, the system stops being a constant. The product itself becomes a source of variance, and our measurement framework has to change accordingly.</p><div><hr></div><p><em><strong>If you want help applying this framework to your own product, I&#8217;m hosting a free 30 minute live walkthrough on Redesigning Product Metrics for AI.</strong></em> </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/98af3e/redesign-your-product-metrics-for-ai?utm_medium=ll_share_link&amp;utm_source=instructor&quot;,&quot;text&quot;:&quot;RSVP for Live Walkthrough&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/98af3e/redesign-your-product-metrics-for-ai?utm_medium=ll_share_link&amp;utm_source=instructor"><span>RSVP for Live Walkthrough</span></a></p><div><hr></div><h1>Part II: Redesigning Measurement for Probabilistic Systems</h1><p>The framework we built in Part I assumes deterministic product logic, and large language models break that assumption.</p><h2>I. The Collapse of the Deterministic Framework</h2><p>The central claim of this guide is that the mechanics of the deterministic feedback loop break once we remove the constant from the system&#8217;s logic. That break shows up in two ways:</p><ol><li><p>The product logic is no longer fixed; it is a stochastic mapping from inputs to outputs.</p></li><li><p>As a result, the signals we use to infer user value become harder to interpret.</p></li></ol><p>Understanding these two shifts sets the stage for the new measurement system we need to build on top.</p><h3>Fixed logic vs probabilistic output</h3><p>As mentioned above, in deterministic software, the product logic behaves like a finite state machine. For a given input and state, there is a narrow set of allowed transitions, all defined by code. Again:</p><ul><li><p>If a user clicks &#8220;Save,&#8221; we persist a record.</p></li><li><p>If a user applies a price filter, we sort accordingly.</p></li><li><p>If a user submits a form, we either accept it or return a clear error.</p></li></ul><p>We can think of this as a function:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;F(x) = y&quot;,&quot;id&quot;:&quot;PFYAKIBIJQ&quot;}" data-component-name="LatexBlockToDOM"></div><p>Given the same input <em><strong>x</strong></em>, we get the same output <em><strong>y</strong></em>, modulo edge cases and infrastructure noise. At the level of application logic, we treat the code as a constant <em><strong>k</strong></em> in our measurement system.</p><p>When we replace that logic with a large language model, the behavior changes. An LLM is a conditional probability distribution over tokens:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;P(y \\mid x)&quot;,&quot;id&quot;:&quot;ZFXNQNRWDC&quot;}" data-component-name="LatexBlockToDOM"></div><p>Given a prompt <em><strong>x</strong></em>, the model samples an output <em><strong>y</strong></em> from this distribution. For the same input and context, we can see different responses over time, depending on factors such as:</p><ul><li><p>Sampling temperature and decoding strategy</p></li><li><p>Small differences in hidden state or context</p></li><li><p>Model updates</p></li></ul><p>Even if we reduce temperature and try to &#8220;lock down&#8221; behavior, we are still interacting with a system whose natural mode is to generate from a distribution rather than execute a fixed rule.</p><p>A simple metaphor:</p><blockquote><p>Deterministic logic behaves like a <strong>calculator</strong>. The same expression always returns the same result.</p><p>An LLM behaves more like a <strong>slot machine</strong>. For a given prompt, we get a draw from a distribution of plausible answers.</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!34rY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!34rY!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!34rY!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!34rY!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!34rY!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!34rY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:60281,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!34rY!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!34rY!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!34rY!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!34rY!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d655fa6-f8af-43aa-8e34-316550b549e5_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This shift from fixed outputs to probabilistic outputs is what voids the deterministic advantage. The product logic is no longer a background constant in our experiments. It is an active source of variation.</p><h3>Loss of Control and Measurement Integrity</h3><p>The deterministic feedback loop depends on two properties:</p><ol><li><p>We can isolate a variable when we change the product.</p></li><li><p>The metrics we observe have a stable relationship with user value.</p></li></ol><p>Probabilistic outputs strain both.</p><h4>1. Control becomes more difficult</h4><p>In a classic A/B test, we change exactly one thing for the treatment group. The rest of the system is assumed to be identical. Any difference in outcomes can be attributed to the treatment, up to random noise.</p><p>With an LLM in the loop, the system itself contributes randomness. Even if we fix the model version and parameters, the same prompt and context can still produce different answers over time, and those answers can differ in quality along multiple dimensions (accuracy, tone, completeness).</p><p>This complicates attribution for both back-end and front-end changes.</p><ul><li><p><strong>Prompt experiment</strong>: We introduce a new system instruction to make answers more concise. If metrics improve, is it because the instruction changed behavior, or because the sample of outputs for this cohort happened to be better by <em>chance</em>?</p></li><li><p><strong>UI experiment</strong>: We move a &#8220;Copy to Clipboard&#8221; button. In a deterministic system, both groups see the same content; any change in clicks can be tied to placement. In a probabilistic system, the treatment group sees a different layout <em>and</em> potentially different answers. Higher copy rates might reflect a better button or a better answer.</p></li></ul><p>We can still run experiments, but the model&#8217;s variance is now part of the error term. We need more care in experimental design, more data to reach the same confidence, and often an additional layer of evaluation to understand whether the model behavior itself shifted.</p><h4>2. Measurement integrity degrades</h4><p>In the deterministic world, we used our understanding of the product logic to interpret logs:</p><ul><li><p>We know what &#8220;Export PDF&#8221; does, because we wrote the code.</p></li><li><p>We know what &#8220;Checkout Completed&#8221; means, because the workflow is fixed.</p></li></ul><p>That allowed us to make strong hypotheses:</p><blockquote><p><em>If the system reports event X, the user probably achieved outcome Y.</em></p></blockquote><p>In a probabilistic system, we can no longer make such confident claims about the content of responses just from the presence of an event:</p><ul><li><p>A model can return an answer that is well-formed JSON, passes schema validation, and looks correct, and still be factually wrong.</p></li><li><p>A support bot can resolve a ticket in one shot in the logs while giving advice that is subtly harmful in practice.</p></li></ul><p>At the log level, a confident lie and a confident truth often look identical:</p><ul><li><p>Same endpoint.</p></li><li><p>Same latency.</p></li><li><p>Same status codes.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!K9Sw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!K9Sw!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!K9Sw!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!K9Sw!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!K9Sw!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!K9Sw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:73301,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!K9Sw!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!K9Sw!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!K9Sw!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!K9Sw!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc087dd4-93d4-408a-bb7a-f551c2ea1ce1_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Without additional evaluation, our metrics risk collapsing back to surface activity: <em>number of answers generated</em>, <em>time on page</em>, <em>tickets resolved</em>, without insight into whether those answers were actually helpful.</p><h3>The Interpretive Crisis: from Binary Errors to Fuzzy Failures</h3><p>Traditional software gives us sharp, binary signals about correctness:</p><ul><li><p>Did the API return 200 OK?</p></li><li><p>Did the page load in under 200 ms?</p></li><li><p>Did the transaction commit?</p></li></ul><p>Failures are usually obvious:</p><ul><li><p>500 status codes</p></li><li><p>Timeouts</p></li><li><p>Exceptions in logs</p></li></ul><p>We can count these failures and set clear thresholds. If error rates are near zero and latency is within budget, we assume the system is working as designed.</p><p>LLM-based systems change the shape of failure. The primary output is not a boolean or a structured record; it is text (or another unstructured artifact). The model can:</p><ul><li><p>Respond quickly</p></li><li><p>Return valid JSON</p></li><li><p>Stay within token limits</p></li></ul><p>and still fail in ways that matter to users:</p><ul><li><p><strong>Hallucination</strong>: Asserting facts or citations that are not grounded in any source.</p></li><li><p><strong>Sycophancy</strong>: Agreeing with incorrect user statements.</p></li><li><p><strong>Over-refusal</strong>: Declining safe prompts because of overly broad safety rules.</p></li><li><p><strong>Under-refusal</strong>: Answering prompts it should not.</p></li></ul><p>None of these show up in standard operational metrics. We cannot write a query like:</p><pre><code>SELECT count(*) FROM responses WHERE answer_was_helpful = false;</code></pre><p>without first defining what &#8220;helpful&#8221; means and how to detect it.</p><p>As a result, we get a gray zone of performance:</p><ul><li><p>Uptime is high.</p></li><li><p>Latency is low.</p></li><li><p>Error rates are near zero.</p></li></ul><p>But users still complain, or product outcomes stall. The traditional observability stack is largely blind to the semantic quality of model outputs.</p><p>To restore a usable feedback loop, we need to add a new layer to the system: an evaluation engine that can:</p><ul><li><p>Capture richer units of data (traces, not just events).</p></li><li><p>Score outputs along dimensions that matter to users (accuracy, faithfulness, tone, safety).</p></li><li><p>Turn those scores into metrics that can plug back into the same kind of hierarchy we used in deterministic systems.</p></li></ul><p>The next section introduces that hierarchy for AI evaluations and shows how it connects to agents, retrieval, and context engineering.</p><h2>II. The AI Evaluation Hierarchy</h2><p>To govern a probabilistic system, we need more than a new set of KPIs. We need an additional layer in the stack: an <strong>AI evaluation engine</strong> that can turn variable model outputs into quantitative signals.</p><p>The deterministic hierarchy from Part I still matters. We still care about input metrics, a North Star, and business outcomes. What changes is that we insert a more robust evaluation layer between our <strong>system output</strong> and our <strong>North Star</strong>.</p><p>The product no longer emits clean, binary events that we can treat as proxies. It emits text (or other artifacts) whose quality must be judged before we can trust downstream metrics. The evaluation layer defines how we do that.</p><p><strong>Grounding Hypotheses in User Value (again)</strong></p><p>We start in the same place as before: with the user&#8217;s goal.</p><p>In the deterministic world, we grounded metrics in <strong>user actions</strong>:</p><ul><li><p>&#8220;Export Report&#8221; clicked</p></li><li><p>&#8220;Submit Application&#8221; completed</p></li></ul><p>We trusted those events because we trusted the code behind them. If the button worked, the click was a reasonable proxy for intent.</p><p>In the probabilistic world, the core object we have to reason about is not the click, but the <strong>model output</strong>:</p><ul><li><p>A block of text from an assistant</p></li><li><p>A multi-step plan from an agent</p></li><li><p>A generated SQL query or API call</p></li></ul><p>We cannot hard-code an expected string and assert <code>output == expected</code>. The &#8220;right&#8221; answer is often not unique, and the model can fail in subtle ways that do not show up in structure or timing.</p><p>So we go back to first principles and ask:</p><blockquote><p><em>For a given user goal G, what properties must the AI&#8217;s response have (or avoid) for the interaction to be considered successful?</em></p></blockquote><p>For example:</p><ul><li><p>In a <strong>legal research tool</strong>, a lawyer might say:</p><ul><li><p><em>Success:</em> cites the correct precedents, stays within the provided documents.</p></li><li><p><em>Failure:</em> fabricates cases or statutes, or omits critical constraints.</p></li></ul></li><li><p>In a <strong>customer support bot</strong>, a support lead might say:</p><ul><li><p><em>Success:</em> resolves the issue without escalation, in a tone that matches our brand.</p></li><li><p><em>Failure:</em> gets stuck in apology loops, repeats irrelevant information, or gives unsafe instructions.</p></li></ul></li><li><p>In a <strong>code assistant</strong>, an engineer might say:</p><ul><li><p><em>Success:</em> compiles, passes tests, and explains the change clearly.</p></li><li><p><em>Failure:</em> suggests insecure patterns or uses deprecated APIs.</p></li></ul></li></ul><p>The goal is to collect <strong>qualitative descriptions of success and failure</strong> and turn them into <strong>evaluation hypotheses</strong>.</p><p>We are effectively writing a product spec for &#8220;what a good answer looks like,&#8221; in terms of attributes rather than exact wording:</p><ul><li><p>Must be accurate with respect to provided context</p></li><li><p>Must not hallucinate unsupported facts</p></li><li><p>Must be concise</p></li><li><p>Must use a professional tone</p></li><li><p>Must avoid certain failure patterns</p></li></ul><p>These hypotheses are the raw material for the evaluation hierarchy.</p><h3>The Multi-dimensional Metric Suite</h3><p>In deterministic systems, we often treat correctness as a single bit: success or failure. In AI systems, that is not enough. Outputs have multiple dimensions of quality.</p><p>A response can be:</p><ul><li><p>Perfectly formatted but factually wrong.</p></li><li><p>Factually correct but needlessly long.</p></li><li><p>Accurate and concise, but in the wrong tone.</p></li></ul><p>To capture this, we replace a single &#8220;works/doesn&#8217;t work&#8221; indicator with a <strong>metric suite</strong>: a set of scores that evaluate different aspects of the model&#8217;s behavior.</p><p>A useful way to structure this suite is in three layers:</p><ol><li><p>Structural metrics (deterministic checks)</p></li><li><p>Similarity metrics (reference-based)</p></li><li><p>Semantic metrics (model- or human-judged)</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!o1sU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!o1sU!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!o1sU!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!o1sU!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!o1sU!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!o1sU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:96295,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!o1sU!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!o1sU!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!o1sU!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!o1sU!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83edcbe7-91d6-4439-a941-7e50ff1832ac_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4>Layer 1: Structural metrics (deterministic)</h4><p>Structural metrics answer the question:</p><blockquote><p><em>Did the model follow the basic rules we imposed?</em></p></blockquote><p>They are cheap, binary checks we can implement with normal code:</p><ul><li><p><strong>Format compliance</strong></p><ul><li><p>Is the output valid JSON?</p></li><li><p>Does it conform to the requested schema?</p></li><li><p>Are all required fields present?</p></li></ul></li><li><p><strong>Constraint satisfaction</strong></p><ul><li><p>Is the answer under 500 words?</p></li><li><p>Did it include the required sections (for example, &#8220;Summary,&#8221; &#8220;Risks,&#8221; &#8220;Next Steps&#8221;)?</p></li></ul></li><li><p><strong>Baseline performance</strong></p><ul><li><p>Did we receive a response within 200 ms for the first token?</p></li><li><p>Did the model stay within token or rate limits?</p></li></ul></li></ul><p>If a response fails structural checks, we often do not need an AI model to judge it. We can either discard the output, retry, or mark it as a hard failure.</p><p>Structural metrics are our first line of defense: they keep obviously broken outputs from polluting the rest of the system.</p><h4>Layer 2: Similarity metrics (reference-based)</h4><p>Some tasks have <strong>reference answer</strong> or at least reference text that describes the expected content. In those cases, we can measure how close the model output is to a known good example.</p><p>This layer includes N-gram overlap (ROUGE, BLEU, etc.), which is useful for translation, summarization, or extraction tasks where specific phrases matter. And it also includes semantic similarity, which<strong> </strong>converts the output and the reference into embeddings and compute cosine similarity. This captures &#8220;meaning&#8221; similarity even when the wording differs.</p><p>These metrics are more forgiving than exact string equality. They let us see whether the model roughly matched the intent of an answer key without requiring identical phrasing.</p><p>Similarity metrics are not enough on their own, but they are fast and useful as a middle layer between basic structure and deeper judgment.</p><h4>Layer 3: Semantic metrics (probabilistic)</h4><p>The most important layer for AI products is the <strong>semantic layer</strong>:</p><blockquote><p>Does this response actually do what the user needs, according to the criteria we and our users care about?</p></blockquote><p>These are inherently judgment calls. They evaluate properties such as:</p><ul><li><p><strong>Accuracy / faithfulness</strong></p><ul><li><p>Does the answer rely only on the provided context, or did it introduce unsupported claims?</p></li><li><p>For a RAG system, are all asserted facts traceable to retrieved documents?</p></li></ul></li><li><p><strong>Helpfulness / task success</strong></p><ul><li><p>Did the answer resolve the user&#8217;s issue?</p></li><li><p>For a code assistant, did the suggestion compile and pass tests?</p></li><li><p>For a support bot, would a human agent consider the ticket &#8220;resolved&#8221;?</p></li></ul></li><li><p><strong>Tone and style</strong></p><ul><li><p>Does the answer sound professional, empathetic, or neutral as required?</p></li><li><p>Does it avoid banned phrases or sensitive language?</p></li></ul></li><li><p><strong>Safety</strong></p><ul><li><p>Did the model avoid harmful content?</p></li><li><p>Did it refuse unsafe prompts?</p></li><li><p>Did it avoid over-refusing safe but technical prompts (for example, &#8220;kill process&#8221; in a Linux context)?</p></li></ul></li></ul><p>We cannot reliably capture these with regexes or simple numeric thresholds. Instead, we typically use <strong>model-based evaluations</strong> (&#8220;LLM-as-judge&#8221;) or human review:</p><ol><li><p>For each trace, we feed the judge (human or machine):</p><ul><li><p>The user request</p></li><li><p>The context provided to the model</p></li><li><p>The model&#8217;s response</p></li><li><p>A rubric describing what we want to assess</p></li></ul></li><li><p>The judge model returns a binary success or failure (0 or 1), and optionally an explanation.</p></li></ol><p>This gives us a numeric <strong>semantic score</strong> for each dimension we care about. We can then aggregate these across traces to form metrics like:</p><ul><li><p>Average faithfulness score</p></li><li><p>Percentage of responses with safety issues</p></li><li><p>Percentage of answers rated &#8220;task complete&#8221;</p></li></ul><p>Taken together, the three layers give us a **multi-dimensional view** of quality:</p><ol><li><p>Structural: &#8220;Is the output well-formed?&#8221;</p></li><li><p>Similarity: &#8220;Is it close to known good outputs?&#8221;</p></li><li><p>Semantic: &#8220;Is it actually correct and useful for this user, in this context?&#8221;</p></li></ol><h3>Defining the Unit of Evaluation: The Trace</h3><p>So far we have talked about scoring &#8220;responses.&#8221; For AI products (especially agentic ones) that is too narrow. A single helpful or harmful response is the result of a <strong>process</strong>, not just a single model call.</p><p>To evaluate that process, we need a richer unit of data: the <strong>trace</strong>.</p><p>A <strong>trace</strong> is a single, end-to-end record of an AI interaction. At minimum, it should capture:</p><ol><li><p><strong>Input</strong>: The user&#8217;s request, including any relevant metadata (user id, segment, channel).</p></li><li><p><strong>Context</strong>: The documents, database rows, or API results retrieved (for example, via RAG) and passed into the model.</p></li><li><p><strong>System instructions: </strong>The prompts, system messages, and policies used to condition the model, such as &#8220;act as a support agent&#8221; or &#8220;respond in JSON.&#8221;</p></li><li><p><strong>Intermediate steps (for agents):</strong></p><ul><li><p>Tool calls (SQL queries, API calls, web searches).</p></li><li><p>Tool outputs returned to the model.</p></li><li><p>Planning steps, if the agent decomposes the task.</p></li></ul></li><li><p><strong>Output: </strong>The final answer shown to the user (or the action taken on their behalf).</p></li></ol><p>For agent systems, the trace is effectively a <strong>timeline</strong>: a sequence of model calls and tool interactions that shows how the agent arrived at its final decision.</p><p>The trace is the atomic row of data that the evaluation engine operates on. It lets us:</p><ul><li><p>Apply structural checks (for example, JSON validity) to the output.</p></li><li><p>Compare the output to the <strong>context</strong> for faithfulness.</p></li><li><p>Ask a judge model to rate helpfulness using the full story (input + context + output).</p></li><li><p>Diagnose where things went wrong when a semantic metric fails.</p></li></ul><p>Consider a simple <strong>faithfulnes</strong>s evaluation in a legal assistant:</p><pre><code><strong>Trace A (success)</strong>
- Context: &#8220;The defendant, Mr. Smith, was acquitted on July 4th.&#8221;
- Output: &#8220;Mr. Smith was found <em>not guilty in early July.</em>&#8221;
- Check: Every asserted fact (&#8220;not guilty,&#8221; &#8220;July&#8221;) is supported by the context.
- Faithfulness score: 1.0</code></pre><pre><code><strong>Trace B (hallucination)
</strong>- Context: &#8220;The defendant, Mr. Smith, was acquitted on July 4th.&#8221;
- Output: &#8220;Mr. Smith was <em>convicted on August 1st</em>.&#8221;
- Check: The key claim (&#8220;convicted on August 1st&#8221;) is not present in the context.
- Faithfulness score: 0.0</code></pre><p>Without the trace, we only see the output text and we are forced to treat <em>&#8220;convicted on August 1st&#8221;</em> as just another string. With the trace, we can compare output to context and turn &#8220;hallucination&#8221; into a computable metric.</p><p>The same pattern applies to agents:</p><ul><li><p>If the wrong answer comes from bad retrieval, the trace will show irrelevant or missing documents.</p></li><li><p>If the agent picked the wrong tool, the trace will show a tool call that does not match the user&#8217;s need.</p></li><li><p>If the reasoning step failed, we will see correct tool outputs followed by a flawed synthesis.</p></li></ul><p>By making traces the core unit of evaluation and layering structural, similarity, and semantic metrics on top of them, we move quality from a vague judgment to a measurable, debuggable property of the system. This, in turn, lets us connect AI-specific metrics back into the broader hierarchy: they become input metrics and quality levers that we can validate against the North Star and, ultimately, business outcomes.</p><h2>III. Governing the AI Metric Suite</h2><p>By this point, we have:</p><ol><li><p>Traces as the unit of evaluation, and</p></li><li><p>A metric suite that scores each trace along structural, similarity, and semantic dimensions.</p></li></ol><p>The next problem is not a lack of metrics. It is too many of them.</p><p>For any non-trivial AI product, we can define dozens of plausible quality metrics:</p><ul><li><p>Accuracy, faithfulness, coverage</p></li><li><p>Helpfulness, task completion</p></li><li><p>Brevity, verbosity, reading level</p></li><li><p>Tone, empathy, politeness</p></li><li><p>Safety, refusal rate, false refusal rate</p></li><li><p>Etc.</p></li></ul><p>Each metric is defensible in isolation. But we cannot run a product by trying to optimize all of them simultaneously. Without a way to prioritize, the evaluation engine degenerates into a collection of dashboards that are interesting but not actionable.</p><p>We need a way to:</p><ol><li><p>Decide which metrics actually matter for user and business value.</p></li><li><p>Manage trade-offs between them when they conflict.</p></li></ol><h3>The Infinite Metric Suite Problem</h3><p>In deterministic software, the number of failure modes we measured was relatively small:</p><ul><li><p>Latency</p></li><li><p>Error rates</p></li><li><p>Uptime</p></li><li><p>A handful of key product metrics</p></li></ul><p>If the API was fast and returning 200 OK, and the key product metrics looked healthy, we assumed the system was working.</p><p>In AI products, the failure surface is much larger. Because the output is text or other unstructured artifacts, there are many ways for it to be &#8220;wrong&#8221;:</p><ul><li><p>Factually incorrect (hallucination)</p></li><li><p>Correct but irrelevant (off-topic)</p></li><li><p>Correct but too long or too short</p></li><li><p>Correct but in the wrong tone</p></li><li><p>Refusing safe prompts or answering unsafe ones</p></li></ul><p>We can define a metric for each of these. Teams might create a:</p><ul><li><p>&#8220;Faithfulness score&#8221;</p></li><li><p>&#8220;Helpfulness score&#8221;</p></li><li><p>&#8220;Brevity score&#8221;</p></li><li><p>&#8220;Empathy score&#8221;</p></li><li><p>&#8220;Citation score&#8221;</p></li><li><p>&#8220;Toxicity score&#8221;</p></li></ul><p>On a dashboard, this becomes a wall of gauges. When one metric improves and another degrades, it is not obvious whether the change is good or bad for the user.</p><p>This is the <strong>infinite metric suite problem</strong>:</p><blockquote><p><em>The space of possible quality metrics is unbounded, but the team&#8217;s attention is not.</em></p></blockquote><p>The solution is not to stop measuring. It is to treat metrics as <strong>candidates</strong> that have to earn their place in the core evaluation stack.</p><h3>Filtering the Metric Suite to Key Quality Indicators</h3><p>We can borrow the same discipline we used for traditional metrics:</p><blockquote><p>We do not accept a metric into the core stack only because it is easy to compute.</p><p>We accept it only if it has <strong>predictive power</strong> for the North Star or for important business outcomes.</p></blockquote><p>This process looks a lot like feature selection in machine learning:</p><ol><li><p>Generate a large set of candidate AI metrics from the evaluation engine.</p></li><li><p>Test which ones actually explain variance in the North Star.</p></li><li><p>Promote only the useful ones to <strong>Key Quality Indicators (KQIs)</strong>.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!FXPR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!FXPR!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!FXPR!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!FXPR!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!FXPR!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!FXPR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:86679,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!FXPR!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!FXPR!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!FXPR!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!FXPR!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a60b6a-7364-4fed-9ddb-b7555ee38ee5_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>There are three main ways to do this.</p><h4>1. Passive validation (historical regression)</h4><p>Start with <strong>historical traces</strong> where you know, for each interaction, whether it contributed to your <strong>North Star</strong> or to a direct, per-interaction version of it.</p><p>Examples:</p><ul><li><p><em>Code assistant: did this suggestion lead to an accepted change or a commit that passed tests</em></p></li><li><p><em>Support bot: did this exchange resolve the ticket without human escalation</em></p></li><li><p><em>Knowledge assistant: did this answer satisfy the query without a follow-up or escalation</em></p></li></ul><p>For each trace, compute:</p><ul><li><p><strong>Candidate AI metrics:</strong> faithfulness, helpfulness, brevity, safety scores, and so on</p></li><li><p>A target outcome that reflects the <strong>North Star</strong> at the unit of analysis you care about</p><ul><li><p>Either the North Star itself, if it is defined per interaction</p></li><li><p>Or a label that rolls up directly into the North Star (for example <em>booking_created_in_this_session</em> when the North Star is Nights Booked)</p></li></ul></li></ul><p>Then run simple models:</p><ul><li><p>Correlation analysis</p></li><li><p>Logistic or linear regression</p></li><li><p>Tree-based models with feature importance</p></li></ul><p>The question is:</p><blockquote><p><em>Does variance in metric X consistently explain variance in the North Star outcome Y?</em></p></blockquote><p>You might find:</p><ul><li><p>A politeness score with almost no relationship to whether engineers accept code suggestions</p></li><li><p>A strong negative relationship between latency and tickets resolved in a single turn</p></li></ul><p>This kind of analysis does not prove causality, but it is a cheap way to separate obvious noise from candidate signals. Metrics with near-zero power to explain North Star movement are unlikely to be worth optimizing.</p><h4>2. Active validation (experiments)</h4><p>To move from &#8220;predictive&#8221; to &#8220;causal,&#8221; we can run experiments where we deliberately change the system to move a quality metric and see what happens to the North Star.</p><p>For example:</p><ul><li><p><em>Change prompts to enforce more concise answers.</em></p></li><li><p><em>Introduce an explicit reasoning step (chain-of-thought) to improve accuracy.</em></p></li><li><p><em>Adjust safety rules to reduce over-refusals.</em></p></li></ul><p>In a classic RCT:</p><ol><li><p>Randomly assign users to Control and Treatment.</p></li><li><p>Apply the change only to Treatment.</p></li><li><p>Measure both the AI quality metric (for example, conciseness score) and the downstream product metric (for example, task completion).</p></li></ol><p>If the treatment group shows a significant improvement in both the AI metric and the product metric, that is evidence that the AI metric is not just a descriptive label; it is a useful lever.</p><p>AI experiments have an extra wrinkle: the &#8220;treatment&#8221; is probabilistic. For example, a prompt intended to enforce brevity might still produce long answers part of the time. To know who actually &#8220;received&#8221; the treatment, we must <strong>score traces after the fact</strong> (using the evaluation engine).</p><p>This makes experiments more expensive:</p><ol><li><p>We have to run the system.</p></li><li><p>Then run evaluations.</p></li><li><p>Then analyze the results.</p></li></ol><p>The <strong>risk profile</strong> also changes. Because we do not control the exact output a user will see, there is a higher chance that an experimental variant serves a bad answer, a confusing tone, or an unsafe suggestion. In a deterministic system, treatment and control differ in a narrowly scoped way. In an AI system, the entire distribution of outputs can shift in ways that are hard to anticipate, which raises the risk of degrading the experience and eroding user trust.</p><p>Because of this increased cost and increased risk, we typically reserve experiments for a small number of promising variants and rely on cheaper historical analysis to filter out weak candidates.</p><h4>3. Causal Inference on Observational Data</h4><p>When experiments are risky or expensive, you can still approximate causal impact from logs. The idea is the same as before, but now the &#8220;treatment&#8221; is a change in an AI quality metric (for example, higher faithfulness) instead of a feature flag.</p><p>In practice, you reuse the same tools from the deterministic section:</p><ul><li><p><strong>Regressions with controls:</strong> Model the North Star (or a per interaction version of it) as a function of your AI metric plus user and context controls.</p></li><li><p><strong>Panel / before&#8211;after comparisons:</strong> When a model, prompt, or safety policy changed at a known time or for a known cohort, compare how outcomes moved for exposed vs unexposed groups.</p></li><li><p><strong>Matching:</strong> When some users naturally see higher or lower quality responses, match them on observables (segment, tenure, workload) and compare outcomes between matched groups.</p></li></ul><p>You will not get a perfect estimate, but you will usually learn whether a given AI metric is directionally useful. The test is simple:</p><blockquote><p><em>After you control for the obvious confounders, do changes in this metric still line up with changes in the North Star?</em></p></blockquote><p>If yes, treat it as a candidate KQI. If no, keep it in the dashboard as a diagnostic and look for a better lever.</p><h3>Managing Trade-offs Between KQIs</h3><p>Even after pruning the suite, we will not end up with a single scalar metric. We will end up with a subset of KQIs that matter. For example: <em>faithfulness, task success, latency, </em>and<em> safety.</em></p><p>These metrics can often pull in different directions:</p><ul><li><p>Tightening safety can increase false refusals.</p></li><li><p>Forcing more careful reasoning can increase latency.</p></li><li><p>Compressing answers to improve brevity can hurt perceived helpfulness.</p></li></ul><p>We cannot maximize all of them at once. We need a way to reason about trade-offs.</p><p>The same regression style analyses you used to validate metrics can also give you rough coefficients that describe how sensitive the North Star is to each metric: </p><blockquote><p><em>how much a small change in metric X tends to move the North Star, holding other factors constant.</em></p></blockquote><p>For example:</p><ul><li><p>A 10% increase in hallucination rate might reduce task success by 8% (&#8722;0.8 coefficient).</p></li><li><p>A 10% increase in average response time might reduce task success by 1% (&#8722;0.1 coefficient).</p></li></ul><p>These coefficients act like <strong>exchange rates</strong> between metrics. They let us ask questions such as:</p><ul><li><p>How much latency can we afford to add if we reduce hallucinations by a given amount?</p></li><li><p>How many additional refusals are acceptable if we significantly reduce toxic outputs?</p></li></ul><p>We can write this informally as:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\Delta \\text{Net User Value} = \\sum_i C_i \\times \\Delta \\text{Metric}_i&quot;,&quot;id&quot;:&quot;XUCJBVKWRU&quot;}" data-component-name="LatexBlockToDOM"></div><p>Where:</p><ul><li><p>C i is the estimated impact coefficient of metric i on the North Star.</p></li><li><p>&#916;Metric i is the change we expect for that metric.</p></li></ul><p>Example:</p><p><em>A prompt change reduces hallucinations by 5 percentage points and increases latency by 200 ms.</em></p><ul><li><p>Coefficient for hallucinations: &#8722;0.8</p></li><li><p>Coefficient for latency: &#8722;0.01 per 100 ms</p></li></ul><p>Approximate impact:</p><ul><li><p>Hallucinations: +5&#215;0.8=+4.0 units of value</p></li><li><p>Latency: &#8722;2&#215;0.01=&#8722;0.02 units of value</p></li></ul><p>Even with the added latency, the net effect is strongly positive (4.0 - 0.02 = +3.98). The trade-off is worth it as we expect a <em>net increase</em> in our North Star of 3.98.</p><p>The math here is approximate; coefficients have noise and confidence intervals. The point is not to compute an exact utility function. The point is to make trade-offs <strong>explicit</strong>, ground them in empirical estimates rather than intuition, and keep the focus on <strong>Net User Value</strong>, not on any single metric in isolation.</p><p>With this governance structure the evaluation engine generates candidate metrics, causal validation promotes a small subset to KQIs, and causal weighting helps us navigate trade-offs between KQIs when making product decisions.</p><p>In the next section, we will look at how this metric stack must evolve over time, and how trace-level error analysis becomes a continuous discovery process as the model, data, and user behavior change.</p><h3>IV. The Continuous Discovery Loop</h3><p>At this point, we have:</p><ol><li><p>A metric hierarchy for the product (inputs &#8594; North Star &#8594; outcomes).</p></li><li><p>An evaluation engine that scores traces along key quality dimensions.</p></li><li><p>A governance layer that filters metrics into a small set of KQIs and manages trade-offs.</p></li></ol><p>It would be tempting to stop here: define the metrics, build the data pipelines and dashboards, and treat the evaluation system as &#8220;done.&#8221;</p><p>For AI products, that assumption is wrong.</p><p>In deterministic systems, failure modes are largely defined by the code we wrote. In AI systems, the failure surface is not only larger; it evolves over time. The definition of &#8220;quality&#8221; is a moving target.</p><h3>The Limit of Foresight</h3><p>As we&#8217;ve now discussed several times, in traditional product development, we can often enumerate the main ways a feature can fail:</p><ul><li><p>The API returns an error.</p></li><li><p>The form submission times out.</p></li><li><p>The database write fails.</p></li></ul><p>We can write tests for these cases up front because the behavior of the system is bounded by the logic we implemented.</p><p>In AI systems, new failure modes can emerge even if we never change the code.</p><p>Three forces drive this:</p><h4>1. New inputs</h4><p> As more users adopt the product, they bring new prompts, edge cases, and domain-specific language that were never present in the original evaluation set.</p><p><em>For example, a code assistant might start seeing prompts about a language or framework that was rare at launch.</em></p><h4>2. New underlying data</h4><p>Many AI products are connected to live data sources via retrieval (RAG) or tools. As new records enter the index, they create new contexts for the model to operate on. The model might start pulling in content with properties we did not anticipate (for example, competitor information, noisy logs, or unstructured legal clauses).</p><h4>3. Stochastic output</h4><p>Even with a fixed model and data, sampling can produce new combinations of tokens that were not seen in earlier traces. Small changes in prompts or context can push the model into previously unexplored regions of its behavior. Because of this, the model will eventually fail in ways that were simply not present in our &#8220;golden&#8221; pre-launch dataset.</p><p>For example, consider a legal research assistant:</p><ul><li><p>Day 0: We define &#8220;accuracy&#8221; as &#8220;no hallucinated cases&#8221; and write evals to catch invented citations.</p></li><li><p>Day 30: We discover a new pattern: the model responds with real case citations that are technically correct but irrelevant to the user&#8217;s question. It is &#8220;citation stuffing&#8221; to sound authoritative.</p></li><li><p>Day 60: As new documents enter the index, we notice that the model occasionally recommends competitors&#8217; products or services. The answers are helpful from the user&#8217;s point of view but harmful for the business.</p></li></ul><p>Neither failure mode was in the original rubric. No static metric set defined on Day 0 could have fully anticipated them.</p><p>This is the <strong>limit of foresight</strong> in open-ended AI systems:</p><blockquote><p><em>We cannot rely on a one-time metric design exercise to cover all future failure modes. Quality definitions must evolve with the product.</em></p></blockquote><h3>Error Analysis as Exploratory Data Analysis</h3><p>To keep up with new failure modes, we need a systematic way to discover them. </p><p>In data science, before modeling, we perform exploratory data analysis (EDA). We inspect raw rows, not just aggregates. We look for outliers, clusters, and patterns that suggest new hypotheses.</p><p>For AI products, traces play the role of rows in a dataset. And &#8220;<strong>error analysis</strong>&#8221; becomes a form of EDA on traces.</p><blockquote><p>The goal of error analysis is not just to debug known problems, but to discover behaviors our current metrics do not capture and turn them into new hypotheses and metrics.</p></blockquote><p>A useful practice is to regularly sample and review traces, for example:</p><ul><li><p>Random samples of successful interactions.</p></li><li><p>Random samples of failures (low KQI scores, user complaints, escalations).</p></li><li><p>Samples filtered by interesting conditions (long latency, multiple tool calls, repeated retries).</p></li></ul><p>When we read traces in detail we are looking for patterns that feel wrong or surprising, even if they technically &#8220;pass&#8221; current checks.</p><p>Examples:</p><ul><li><p><em>The model is accurate but condescending when the user asks basic questions.</em></p></li><li><p><em>A safety filter blocks a harmless technical phrase such as &#8220;kill process,&#8221; leading to over-refusals in developer tools.</em></p></li><li><p><em>An agent chooses a needlessly complex tool sequence when a simple lookup would do.</em></p></li></ul><p>Each of these observations is a <strong>candidate failure mode</strong>. Once we see it a few times, we can promote it to a hypothesis:</p><ul><li><p><em>&#8220;We believe our safety filters are too aggressive for technical domains, causing false refusals.&#8221;</em></p></li><li><p><em>&#8220;We believe unnecessary tool hops are hurting latency without improving quality.&#8221;</em></p></li><li><p><em>&#8220;We believe condescending tone is hurting user trust, even when answers are correct.&#8221;</em></p></li></ul><p>From there, we can:</p><ol><li><p>Define a new metric or rule (for example, &#8220;false refusal rate on technical prompts&#8221;).</p></li><li><p>Implement it in the evaluation engine.</p></li><li><p>Measure its relationship to the North Star or other outcomes.</p></li><li><p>Decide whether it becomes a KQI or remains a diagnostic metric.</p></li></ol><blockquote><p>Error analysis is the mechanism that converts <strong>unknown unknowns</strong> into <strong>known unknowns</strong>, then into measurable quantities.</p></blockquote><h3>The Iterative Workflow</h3><p>Putting it all together, AI metric design becomes a continuous evaluation engine rather than a one-time project. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!6I_j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!6I_j!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!6I_j!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!6I_j!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!6I_j!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!6I_j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:48260,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!6I_j!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!6I_j!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!6I_j!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!6I_j!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2ee3a1-5f48-47ff-b7fd-dacc1f4ce5f5_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>At a high level:</p><p><strong>1. Ground in user value: </strong>Choose a specific user workflow and clarify what success and failure mean for that workflow.</p><p><strong>2. Formulate hypotheses: </strong>Translate those definitions into statements about model behavior.</p><p><strong>3. Define metrics: </strong>Implement structural, similarity, and semantic metrics that correspond to those hypotheses. Use LLM-as-judge or human review where needed.</p><p><strong>4. Validate causally:</strong> Check which metrics correlate with and help predict the North Star. Where practical, run experiments or apply causal inference techniques to test whether improving a metric improves user outcomes.</p><p><strong>5. Filter and prioritize:</strong> Promote a small set of metrics to KQIs with clear ownership and targets. Keep others as secondary diagnostics.</p><p><strong>6. Run and monitor:</strong> Log traces and scores in production. Monitor KQIs over time alongside traditional product metrics.</p><p><strong>7. Perform error analysis (EDA):</strong> Regularly review traces, especially:</p><ul><li><p>Those with good KQI scores but bad user outcomes (missed failures).</p></li><li><p>Those with bad KQI scores but good user outcomes (overly strict metrics).</p></li></ul><p><strong>8. Update hypotheses and metrics:</strong> For new patterns discovered in trace review, go back to step 2 <em>(turn them into hypotheses &#8594; define metrics &#8594; validate them &#8594; filter and prioritize)</em></p><p>This loop never stops. </p><blockquote><p>As the model is updated, as the data changes, and as users adopt new behaviors, we keep refining both the <strong>system</strong> that generates outputs and the <strong>metrics</strong> we use to measure those outputs.</p></blockquote><h3>Metrics as a Living Codebase</h3><p>In the deterministic world, many metrics were effectively static artifacts. We picked them once (&#8220;page load time,&#8221; &#8220;error rate,&#8221; &#8220;DAU&#8221;) and then focused on moving them.</p><p>In AI products, metrics themselves become a kind of code. They encode assumptions about what quality means. They are implemented, tested, versioned, and sometimes deprecated. They change over time as we learn more about the product and the users.</p><p>Treating metrics as a living codebase has concrete implications:</p><ol><li><p>Someone needs to <strong>own</strong> the evaluation engine and metric definitions, just as someone owns the model and the UI.</p></li><li><p>Changes to metrics should go through <strong>review</strong>, with clear documentation of what they mean and why they matter.</p></li><li><p>When we see a metric stop correlating with user outcomes, we should be willing to <strong>refactor</strong> or retire it.</p></li></ol><p>In a probabilistic world, we cannot fully predict how the system will behave. What we can do is build a rigorous machine around it to observe, measure, and adapt. The continuous discovery loop is how we keep our definition of &#8220;quality&#8221; aligned with reality as the product, users, and models evolve.</p><h2>V. The New Architecture of AI Metrics</h2><p>We started with a common failure mode: trying to measure probabilistic AI products with the same tools we used for deterministic software.</p><p>In the deterministic world, we could often get away with inheriting generic metrics (like DAU and session length), treating the product logic as a constant, assuming that if the numbers moved in the right direction, users were getting value.</p><p>Once we introduce a large language model into the core of the product, that comfort breaks down. The model turns the logic layer into a source of variance. The output is no longer a simple function of the input; it is a draw from a distribution conditioned on prompts, context, and internal weights.</p><blockquote><p>Redesigning metrics for AI is not about inventing a new list of KPIs; it is about accepting that measurement itself is an active engineering discipline.</p></blockquote><p>We can summarize the shift by comparing the data flow in deterministic and AI systems.</p><h4>The Deterministic Chain</h4><p>In a traditional product, the chain of custody for data looks like this:</p><ol><li><p><strong>User Action</strong>: the user performs an input (clicks a button, submits a form).</p></li><li><p><strong>Product Logic</strong>: the code executes exactly as written.</p></li><li><p><strong>System Output</strong>: the system emits events and updates state in a predictable way.</p></li><li><p><strong>Input Metrics:</strong>  we aggregate those events into trackable metrics.</p></li><li><p><strong>North Star</strong>: we observe their causal effect on our North Star.</p></li><li><p><strong>Business Outcome</strong>: over time, those proxies drive revenue, retention, or other financial measures.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!yM8D!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!yM8D!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!yM8D!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!yM8D!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!yM8D!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!yM8D!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:64640,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!yM8D!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!yM8D!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!yM8D!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!yM8D!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F331d6077-44da-4e64-9022-c6ce095ede2d_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This is the same chain we built in Part I, with deterministic product logic at its core.</p><h4>The Probabilistic Loop</h4><p>When we introduce an LLM or agent into the product, we do not throw away this chain. Users still act, the system still emits events, we still define value proxies, and we still care about business outcomes.</p><p>What changes is <strong>Step 2</strong>. The product logic is no longer a single, rigid code path. It becomes an AI pipeline that needs its own internal measurement loop.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="/__u/substackcdn.com/image/fetch/$s_!mjaV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="/__u/substackcdn.com/image/fetch/$s_!mjaV!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!mjaV!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!mjaV!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!mjaV!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_webp, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png 1456w" sizes="100vw"><img src="/__u/substackcdn.com/image/fetch/$s_!mjaV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:98749,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://dataneighbor.substack.com/i/181105587?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="/__u/substackcdn.com/image/fetch/$s_!mjaV!, /__u/dataneighbor.substack.com/w_424, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png 424w, /__u/substackcdn.com/image/fetch/$s_!mjaV!, /__u/dataneighbor.substack.com/w_848, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png 848w, /__u/substackcdn.com/image/fetch/$s_!mjaV!, /__u/dataneighbor.substack.com/w_1272, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png 1272w, /__u/substackcdn.com/image/fetch/$s_!mjaV!, /__u/dataneighbor.substack.com/w_1456, /__u/dataneighbor.substack.com/c_limit, /__u/dataneighbor.substack.com/f_auto, /__u/dataneighbor.substack.com/q_auto:good, /__u/dataneighbor.substack.com/fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe3e6906e-8a67-4755-b624-784a2c507a08_1280x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>We can think of the AI version as:</p><ol><li><p><strong>User Action:</strong> the user issues a query or takes an action, just as before.</p></li><li><p><strong>Product Logic:</strong> the LLM (and possibly an agent) generates stochastic intermediate steps and output.</p></li><li><p><strong>System Output</strong>: the system emits a full trace <em>(input, context, prompts, tool calls, tool outputs, and final response)</em></p></li><li><p><strong>Continuous Evaluation Engine</strong>: we introduce the evaluation loop described earlier on each trace:</p><ol><li><p>Clarify user value for the workflow</p></li><li><p>Form hypotheses about AI behavior</p></li><li><p>Define structural / similarity / semantic metrics</p></li><li><p>Validate their relationship to the North Star and business outcomes</p></li><li><p>Filter to KQIs, monitor, and refine based on error analysis</p></li></ol></li></ol><p>So the overall chain is still:</p><blockquote><p>User Action &#8594; Product Logic &#8594; System Output &#8594; Input Metric &#8594; North Star &#8594; Business Outcome</p></blockquote><p>What changes is:</p><blockquote><p>in an AI metric workflow the product logic contains a probabilistic model which requires the static input metric to become a <strong>living metric suite</strong>.</p></blockquote><p>In the deterministic world, we optimized products against a relatively stable set of metrics. In the AI world, we are optimizing both the product and the metrics themselves. That is the new architecture of AI measurement: <strong>a joint system where models, products, and evaluations co-evolve to keep our definition of &#8220;success&#8221; aligned with reality.</strong></p><div><hr></div><p><em><strong>If you&#8217;d like to see how this looks on a real product, you can join my free 30 minute live walkthrough on Redesigning Product Metrics for AI.</strong></em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://maven.com/p/98af3e/redesign-your-product-metrics-for-ai?utm_medium=ll_share_link&amp;utm_source=instructor&quot;,&quot;text&quot;:&quot;RSVP for Live Walkthrough&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://maven.com/p/98af3e/redesign-your-product-metrics-for-ai?utm_medium=ll_share_link&amp;utm_source=instructor"><span>RSVP for Live Walkthrough</span></a></p><div><hr></div><p></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://dataneighbor.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Data Neighbor is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item></channel></rss>