<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Lana Plouffe</title>
    <description>The latest articles on DEV Community by Lana Plouffe (@lana_connexion).</description>
    <link>https://dev.to/lana_connexion</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4064570%2F1d597dd9-06b5-4329-a827-3d2bc5fb776e.png</url>
      <title>DEV Community: Lana Plouffe</title>
      <link>https://dev.to/lana_connexion</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lana_connexion"/>
    <language>en</language>
    <item>
      <title>I pre-registered a prediction that my own finding would fail on this market. The product list held; the advice did not.</title>
      <dc:creator>Lana Plouffe</dc:creator>
      <pubDate>Fri, 07 Aug 2026 09:27:41 +0000</pubDate>
      <link>https://dev.to/lana_connexion/i-pre-registered-a-prediction-that-my-own-finding-would-fail-on-this-market-the-product-list-held-4o5</link>
      <guid>https://dev.to/lana_connexion/i-pre-registered-a-prediction-that-my-own-finding-would-fail-on-this-market-the-product-list-held-4o5</guid>
      <description>&lt;p&gt;This week I published a result I liked: adding a buyer's actual situation to a software buying question changes which products an AI engine names. It reproduced on a second market. Two markets, two hits, no misses.&lt;/p&gt;

&lt;p&gt;That is exactly the shape of a finding that is really an artefact of the person writing the questions — which was me. So before running anything else, I picked the market where my own explanation says the effect should &lt;strong&gt;fail&lt;/strong&gt;, wrote the prediction and the numbers that would count as a miss into a file, and committed it before the first API call.&lt;/p&gt;

&lt;p&gt;This is that run. Part of the prediction held and part of it failed, and the part that failed is the more interesting half.&lt;/p&gt;

&lt;h2&gt;
  
  
  The claim being tested
&lt;/h2&gt;

&lt;p&gt;The explanation I had been giving was specific: buyer context does not mainly &lt;em&gt;reorder&lt;/em&gt; the incumbents, it &lt;strong&gt;admits a class the generic question cannot reach&lt;/strong&gt; — the self-hosted line. On CRM and on call center software, that is what happened. Both markets have a large, mature line of software you install on your own equipment, and both times the context questions pulled that block onto the list.&lt;/p&gt;

&lt;p&gt;A specific explanation predicts its own absence. If that is the mechanism, then a market with no such class behind its incumbents should barely move.&lt;/p&gt;

&lt;p&gt;Amazon advertising software is that market. Every bid change in the category runs through Amazon's own advertising API, inside Amazon's cloud, executed by a company Amazon approved as a partner. There is no product you can run on your own hardware, because the thing being automated is not yours to host. I could not name a single self-hosted product in the category to track — and that inability &lt;em&gt;is&lt;/em&gt; the prediction, not a gap in the preparation.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I committed before running it
&lt;/h2&gt;

&lt;p&gt;Read out of the file, which was committed before the first API call:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;PRIMARY — SELFHOST regex, raw answer text, per run.
    predict  &amp;lt;= 15/132 on both runs
    MISS     &amp;gt;= 60/132 on either run   (halfway to the ~125 the other two markets hit)

SECONDARY — roster size vs out/amazonppc/runA (58 vendors).
    board's own run-to-run variation: 58 -&amp;gt; 66, +14%
    crm +68%, callcenter +69%
    predict  &amp;lt; +30%
    MISS     &amp;gt;= +50%

TERTIARY — top-10 overlap on the vendor FOLD KEY vs out/amazonppc/runA.
    board's own noise floor (runA vs runB): 9/10
    crm 4/10, callcenter 6/10 and 7/10
    predict  &amp;gt;= 8/10
    MISS     &amp;lt;= 6/10
    Declared in advance: 7/10 is a grey zone on this endpoint and will be reported as one.
    The PRIMARY endpoint decides the headline.

INHOUSE regex: MISS if &amp;gt;= 60/132 on either run.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The primary instrument is a regex over the raw answer text, so it does not depend on what my extractor chooses to count. Its value comes from being &lt;strong&gt;the same instrument on all three markets&lt;/strong&gt;, unchanged.&lt;/p&gt;

&lt;h2&gt;
  
  
  Control row first
&lt;/h2&gt;

&lt;p&gt;A comparison between two different question sets means nothing until you know what two runs of the &lt;em&gt;same&lt;/em&gt; questions do. So, 44 questions, ChatGPT, Gemini and Perplexity, 132 answers per run:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;control&lt;/th&gt;
&lt;th&gt;top-10 overlap&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;the board vs its own second run&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;9 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;the context run vs its own second run&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;9 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;That is the noise floor. Anything near 10 of 10 is a repeat; a drop below it is the question.&lt;/p&gt;

&lt;h2&gt;
  
  
  Result 1: the product list did not move. The prediction held here.
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;market&lt;/th&gt;
&lt;th&gt;products named, board → with context&lt;/th&gt;
&lt;th&gt;top-10 overlap&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;CRM&lt;/td&gt;
&lt;td&gt;65 → 109&lt;/td&gt;
&lt;td&gt;4 of 10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;call center&lt;/td&gt;
&lt;td&gt;75 → 127&lt;/td&gt;
&lt;td&gt;6 of 10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Amazon advertising&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;58 → 60&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;9 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Roster growth of &lt;strong&gt;3.4%&lt;/strong&gt;, against 68% and 69% on the two markets where the effect fired. The second run gives 65 products, 12.1%, and 10 of 10. 37 of the board's 58 products are on both lists.&lt;/p&gt;

&lt;p&gt;Per engine, never averaged — top-10 overlap between the board and its context twin:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;engine&lt;/th&gt;
&lt;th&gt;top-10 overlap&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ChatGPT&lt;/td&gt;
&lt;td&gt;8 of 10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gemini&lt;/td&gt;
&lt;td&gt;7 of 10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Perplexity&lt;/td&gt;
&lt;td&gt;9 of 10&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;On the two markets where the class exists, the same comparison was 4 of 10 and 6 of 10. Here it is indistinguishable from asking the same questions twice.&lt;/p&gt;

&lt;h2&gt;
  
  
  Result 2: the &lt;em&gt;answers&lt;/em&gt; moved a lot. The prediction failed here.
&lt;/h2&gt;

&lt;p&gt;Same runs. Instead of counting which products were named, count how many answers talk about running it yourself. Same regex, all three markets:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;market&lt;/th&gt;
&lt;th&gt;board&lt;/th&gt;
&lt;th&gt;with context&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;CRM&lt;/td&gt;
&lt;td&gt;0 of 132&lt;/td&gt;
&lt;td&gt;123 of 132&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;call center&lt;/td&gt;
&lt;td&gt;9 of 132&lt;/td&gt;
&lt;td&gt;127 of 132&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Amazon advertising&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0 of 132&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;49 of 132&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;I predicted at most 15. It came back 49 and 46.&lt;/p&gt;

&lt;p&gt;The second instrument, which tracks the one escape hatch this market does have — being told to do it yourself against Amazon's own console and API — is a clean miss against the number I wrote down:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;board run A&lt;/th&gt;
&lt;th&gt;board run B&lt;/th&gt;
&lt;th&gt;context run A&lt;/th&gt;
&lt;th&gt;context run B&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;answers mentioning the do-it-yourself route&lt;/td&gt;
&lt;td&gt;22&lt;/td&gt;
&lt;td&gt;21&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;102&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;105&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;— of which ChatGPT&lt;/td&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;41&lt;/td&gt;
&lt;td&gt;42&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;— of which Gemini&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;41&lt;/td&gt;
&lt;td&gt;42&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;— of which Perplexity&lt;/td&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;20&lt;/td&gt;
&lt;td&gt;21&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;My miss line was 60. It came in at 102 and 105 against a board baseline of 22 and 21.&lt;/p&gt;

&lt;h2&gt;
  
  
  So what actually happened
&lt;/h2&gt;

&lt;p&gt;The engines were given a buyer whose contract says no outside company may hold their trading data. In a market with a self-hosted line, they answer by naming self-hosted products. In this market there are none to name — and they did not invent any. The list of products stayed put, 9 of the top 10 unchanged.&lt;/p&gt;

&lt;p&gt;What changed is the &lt;strong&gt;advice around the list&lt;/strong&gt;. The engines started telling the buyer to run it themselves anyway: use Amazon's own console, work the bulk sheets, build against the advertising API. That is not a product recommendation, so it barely touches the ranking, and it is not nothing either — it is the engine telling a buyer in this category not to buy anything.&lt;/p&gt;

&lt;p&gt;The 23 products on the context list that are not on the board are mostly that same answer wearing a product's clothes. The largest newcomers:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;product&lt;/th&gt;
&lt;th&gt;answers naming it&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Amazon Ads Console&lt;/td&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Amazon Ads Campaign Manager&lt;/td&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Kenshoo&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Marin&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The only "class" this market had available to admit was Amazon itself.&lt;/p&gt;

&lt;h2&gt;
  
  
  Scoring myself against what I wrote down
&lt;/h2&gt;

&lt;p&gt;Being honest about this is the entire reason for writing the prediction down first.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Roster growth — held.&lt;/strong&gt; Predicted under 30%, got 3.4%. Miss line 50%.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Top-10 overlap — held.&lt;/strong&gt; Predicted 8 or better, got 9 and 10. Miss line 6.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Do-it-yourself language — missed&lt;/strong&gt;, and by the number I wrote down first, not one I chose afterwards. Miss line 60, got 102.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Self-hosting language — my prediction was wrong and my miss line was not reached.&lt;/strong&gt; I said at most 15 and set the miss at 60; it came in at 49 and 46. I did not declare a verdict for the band in between, which is a flaw in how I wrote the pre-registration rather than a result. I am reporting it as undeclared instead of picking whichever side flatters me.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The mechanism claim I was making is too strong and the corrected version is narrower: buyer context reliably changes &lt;strong&gt;what the engine says about how to buy&lt;/strong&gt;, and only changes &lt;strong&gt;which products it names&lt;/strong&gt; when the market contains a class of product that the generic question was filtering out. Those are two different effects. I had been reporting them as one, because on the first two markets I looked at they happened to move together.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I can't claim from this
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;This context run is not published as a board&lt;/strong&gt;, and I am not promoting it to one on the strength of a run designed to attack my own finding. The boards linked below are live with their raw answers; the Amazon context run is not, so those figures are the ones here you cannot go and check for yourself today. I would rather say which is which than blur them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Three engines, named on each board's own &lt;code&gt;ranking.json&lt;/code&gt;.&lt;/strong&gt; No Claude, no Grok — no API key for either, a limit and not a choice.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Named is not recommended.&lt;/strong&gt; I count that a product appeared in an answer to a buying question. "Consider X" and a bare list item count the same. Share of shelf, not endorsement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The rewrite is mine.&lt;/strong&gt; I wrote the 44 context twins under a rule — describe the buyer's situation, never a product's features — with a grep enforcing that no question contains a vendor name from the board or any of the words the test is about. A different person writing them would get different numbers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One of the newcomers is named by the board's own question.&lt;/strong&gt; Question 39 on the live board already says "Amazon Campaign Manager", and the context twin inherits that wording verbatim, so it appears identically in both arms and the board's own second run names it 4 times. It is in the table because it is in the data, not because the context introduced it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One market, chosen by me, for a reason I stated in advance.&lt;/strong&gt; Picking the market where your effect should fail is better than not picking one, and it is still one market.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No time series.&lt;/strong&gt; Each board carries a second run as a repeatability check, not a second date. A product at 1 mention is a level, not a decline.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The raw data
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Amazon PPC software board — &lt;a href="https://connexion.me/c/amazonppc/?v=38a45f42cb6c" rel="noopener noreferrer"&gt;https://connexion.me/c/amazonppc/?v=38a45f42cb6c&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Call center software board — &lt;a href="https://connexion.me/c/callcenter/?v=f98d41d85020" rel="noopener noreferrer"&gt;https://connexion.me/c/callcenter/?v=f98d41d85020&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;The CRM context board, where the effect did fire — &lt;a href="https://connexion.me/c/crmctx/?v=5b0cb256c95b" rel="noopener noreferrer"&gt;https://connexion.me/c/crmctx/?v=5b0cb256c95b&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each board links its own raw files at the bottom: &lt;code&gt;answers-runA.jsonl&lt;/code&gt; is the untouched engine responses, &lt;code&gt;mentions-runA.jsonl&lt;/code&gt; every extraction, &lt;code&gt;ranking.json&lt;/code&gt; the table. Click a product name and you get the questions that named it; click a question and you see the verbatim text each engine returned.&lt;/p&gt;

&lt;p&gt;If your product is on one of these boards and the line looks wrong to you, tell me — I would rather fix a board than defend one.&lt;/p&gt;

&lt;p&gt;Disclosure, up front rather than buried: connexion.me is mine, the boards and the raw runs are free, and there is a paid monitoring subscription linked from each board page. Nothing here is behind it.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>datascience</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>Buyer context moved 6 of the top 10 results on one market. I ran it again on an unrelated market and it moved 4.</title>
      <dc:creator>Lana Plouffe</dc:creator>
      <pubDate>Fri, 07 Aug 2026 05:01:23 +0000</pubDate>
      <link>https://dev.to/lana_connexion/buyer-context-moved-6-of-the-top-10-results-on-one-market-i-ran-it-again-on-an-unrelated-market-3d1o</link>
      <guid>https://dev.to/lana_connexion/buyer-context-moved-6-of-the-top-10-results-on-one-market-i-ran-it-again-on-an-unrelated-market-3d1o</guid>
      <description>&lt;p&gt;&lt;a href="https://dev.to/lana_connexion/changing-the-ai-engine-moved-3-of-10-results-changing-the-question-moved-10-of-10-3gk1"&gt;My last post&lt;/a&gt; ended on a result I liked far too much.&lt;/p&gt;

&lt;p&gt;I run free leaderboards of which products AI answer engines name when you ask them to recommend software in a category. Take one buying question, write it 44 different ways, ask every engine all 44, count every product named, publish the counts and the raw runs.&lt;/p&gt;

&lt;p&gt;A consultant &lt;a href="https://community.suitecrm.com/t/i-measured-what-ai-assistants-say-about-small-business-crms-suitecrm-was-named-in-0-of-88-answers/101276" rel="noopener noreferrer"&gt;on the SuiteCRM forum&lt;/a&gt; told me my questions were empty — no industry, no existing systems, no constraints — and that if I added the buyer's real situation, SuiteCRM would start coming back. &lt;a href="https://connexion.me/c/crmctx/?v=f0bf685d5113" rel="noopener noreferrer"&gt;I ran it&lt;/a&gt; and he was right by a mile: from &lt;strong&gt;0 mentions in 132 answers&lt;/strong&gt; to &lt;strong&gt;83&lt;/strong&gt;, and from absent to first in the category.&lt;/p&gt;

&lt;p&gt;That is a great story and it is &lt;strong&gt;n = 1&lt;/strong&gt;. One market, and it is the exact market the person who predicted it works in. So the only honest next move was to try to break it on a market that has nothing to do with CRM, and publish whichever way it fell.&lt;/p&gt;

&lt;h2&gt;
  
  
  The replication
&lt;/h2&gt;

&lt;p&gt;The second market is &lt;strong&gt;call center / contact center software&lt;/strong&gt;, a board I already had: 44 phrasings, 132 answers, ChatGPT, Gemini and Perplexity, 75 distinct products named.&lt;/p&gt;

&lt;p&gt;Same procedure as the CRM run, three parts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Each of the 44 board questions rewritten as its twin, index for index — same buying ask, same register, plus an industry, an existing-systems detail, and an obligation about where the call audio is allowed to live (a professional duty, a contract, a regulator, an underwriter's rule).&lt;/li&gt;
&lt;li&gt;The extraction prompt, the noise regex and the aliases loaded out of the board's own config at import rather than copied, so the only variable is the question.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The tracked product named before the first API call.&lt;/strong&gt; On the CRM run I already knew which product the prediction was about. Here I picked one off the board and wrote it down first: VICIdial, which the call center board names &lt;strong&gt;1 time in 132 answers&lt;/strong&gt;, rank 68 of 75. Whatever number came back for it is the number in this post.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Board question 0, and its twin:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;What is the best call center software for a 50-person customer support team?
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;What is the best call center software for a 50-person customer support team at a hospital network, where every call is a patient conversation covered by the business associate agreements we sign and our compliance office will not allow the recordings to sit with an outside service provider? We run our own phone switch and servers in the building today.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The rule the rewrite is done under is the one that makes the result worth anything: a question may describe &lt;strong&gt;a buyer's situation&lt;/strong&gt; and may never describe &lt;strong&gt;a product's category&lt;/strong&gt;. No "open source", no "self-hosted", no "on-premise", no "sovereignty", and no vendor name from the board. A script greps all 44 questions for those phrases and for every one of the 75 product names on the board, and it runs before a single API call. On the CRM run it caught one and forced a rewrite. On this one it came back clean first time.&lt;/p&gt;

&lt;p&gt;I also left the awkward words in. Where the board question says "cloud" or "CCaaS", the twin still says it, even though it sits oddly next to "cannot leave our network" — real buyers ask exactly that, and stripping it would have been the edit that helps me.&lt;/p&gt;

&lt;h2&gt;
  
  
  Result 1 — the tracked product
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;engine&lt;/th&gt;
&lt;th&gt;VICIdial, board&lt;/th&gt;
&lt;th&gt;with context, run A&lt;/th&gt;
&lt;th&gt;run B&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ChatGPT&lt;/td&gt;
&lt;td&gt;0 / 44&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;11 / 44&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;18 / 44&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gemini&lt;/td&gt;
&lt;td&gt;1 / 44&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;6 / 44&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;7 / 44&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Perplexity&lt;/td&gt;
&lt;td&gt;0 / 44&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0 / 44&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;1 / 44&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;all three&lt;/td&gt;
&lt;td&gt;1 / 132&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;17 / 132&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;26 / 132&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Rank in the category: &lt;strong&gt;68 of 75&lt;/strong&gt; on the board, &lt;strong&gt;14 of 127&lt;/strong&gt; with context, &lt;strong&gt;9&lt;/strong&gt; on the second context run. Spread across 13 and 19 of the 44 questions respectively, so it is not one question carrying the result.&lt;/p&gt;

&lt;p&gt;Counted twice, independently: the extractor's product rows, and a case-insensitive regex for &lt;code&gt;vici-?dial&lt;/code&gt; straight over the raw answer text. 1, 17 and 26. They agree, so there is no third number in play. The board's own second run names it 0 times.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;So the effect reproduces on a market with nothing to do with CRM.&lt;/strong&gt; Same manipulation, different category, a product picked in advance: it goes from noise to the top 15 of 127.&lt;/p&gt;

&lt;h2&gt;
  
  
  Result 2 — and it reproduces &lt;em&gt;smaller&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;Here is the part that would have been easy to leave out.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;comparison&lt;/th&gt;
&lt;th&gt;products in common, top 10&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;call center board, run A vs run B — same questions, same engines&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;10 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;call center board vs its context twin, run A&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;6 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;call center board vs its context twin, run B&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;7 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;small-business CRM board vs its context twin&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;4 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The first row is the control that makes the rest mean anything: ask the same 44 questions twice and the top ten comes back identical, 10 of 10. So the movement below it is the question, not the noise.&lt;/p&gt;

&lt;p&gt;But adding the buyer's situation moved &lt;strong&gt;6 of the top 10&lt;/strong&gt; on CRM and &lt;strong&gt;4 of 10&lt;/strong&gt; here. And the head held: Five9 is first on the call center board and still first with context, with Talkdesk coming up from 3 to 2. On CRM the leader was displaced outright — HubSpot CRM runs that board and finishes 4th once the buyer says who they are, behind SuiteCRM, which the board never named at all.&lt;/p&gt;

&lt;h2&gt;
  
  
  What actually changed, then
&lt;/h2&gt;

&lt;p&gt;Not the ranking. The &lt;strong&gt;roster&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The context run names 127 distinct products against the board's 75, and only 39 appear on both — 88 products get named that the plain question never surfaced once. The top of that list is a coherent class rather than a scatter:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;named with buyer context&lt;/th&gt;
&lt;th&gt;mentions&lt;/th&gt;
&lt;th&gt;on the plain board&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;3CX&lt;/td&gt;
&lt;td&gt;21&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Asterisk&lt;/td&gt;
&lt;td&gt;14&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;FreePBX&lt;/td&gt;
&lt;td&gt;11&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;QueueMetrics&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;FreeSWITCH&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mitel MiContact Center&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;That is the self-hosted telephony stack, arriving as a block. The on-premise product lines from the big incumbents show up with context too — Cisco's Unified Contact Center Express at 20, Genesys Engage, Avaya IP Office — and I have deliberately kept them out of that table, because those vendors do have board rows under other product names and I did not want to publish a number that turns on where I drew the fold. The six above have no row on the board under any spelling.&lt;/p&gt;

&lt;p&gt;The CRM run did the same thing in the same proportion: 113 products with context against 65 on the board, 25 in common.&lt;/p&gt;

&lt;p&gt;That reframes the finding, and I think this version is more useful than the one I published last time. Adding the buyer's situation does not mainly &lt;em&gt;reorder&lt;/em&gt; the incumbents. It &lt;strong&gt;opens the category to a class of products the generic question cannot reach&lt;/strong&gt; — and whether that class then takes the top of the table depends on the market. In CRM it did. In call center software it got into the room and stopped there.&lt;/p&gt;

&lt;h2&gt;
  
  
  The engine asymmetry showed up again
&lt;/h2&gt;

&lt;p&gt;Look down the columns of the first table, not across.&lt;/p&gt;

&lt;p&gt;ChatGPT moves the tracked product to 11 of 44. Perplexity moves it to 0.&lt;/p&gt;

&lt;p&gt;Last time I argued from the CRM run that the engines disagree about &lt;strong&gt;how much a buyer's stated constraint should change the answer at all&lt;/strong&gt;, and that they disagree about that more than they disagree about the answer. I am repeating it only because it survived the replication: same ordering, same search-grounded engine at the bottom, on an unrelated market. If you are evaluating LLM output at any scale, that interaction is the term to budget for.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I can't claim from this
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The call center context run is not published as a board.&lt;/strong&gt; The call center board itself is live below with its raw answers, and so is the CRM pair. This third run is not on the site, so its numbers are the ones here you cannot go and check yourself today. I would rather tell you which is which than blur them together.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;n = 2.&lt;/strong&gt; Two markets is a replication, not a law. It tells me the CRM result was not a fluke of one category; it does not tell me the size of the effect anywhere else.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The rewrite is mine.&lt;/strong&gt; I wrote the 44 context twins under the rule above with the grep as a check, but a different person writing them would get a different number. That is the weakest joint in this whole method and I do not have a fix for it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The extraction pipeline has opinions.&lt;/strong&gt; The call center board's prompt excludes general office phone systems and PBXs, which is right for a board about contact centers and does mean some of what the engines offered a constrained buyer was counted out. It was applied identically to both runs, which is what the comparison needs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Named is not recommended.&lt;/strong&gt; I count that a product appeared in an answer to a buying question. "Consider X", "X is common but", and a bare list item all count the same. Read it as share of shelf, not endorsement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Two model families and one search product&lt;/strong&gt;, named on each board's own &lt;code&gt;ranking.json&lt;/code&gt;. No Claude, no Grok — no API key for either, a limit and not a choice. Two of the three model ids I requested are floating aliases; each run records the pinned id the API actually returned.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No time series.&lt;/strong&gt; Each board carries a second run as a repeatability check, not a second date. A product at 1 mention is a &lt;em&gt;level&lt;/em&gt;, not a decline.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The raw data
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Call center software board — &lt;a href="https://connexion.me/c/callcenter/?v=3aaae02ec4f3" rel="noopener noreferrer"&gt;https://connexion.me/c/callcenter/?v=3aaae02ec4f3&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Small-business CRM board — &lt;a href="https://connexion.me/c/crm/?v=6cde596c1bb4" rel="noopener noreferrer"&gt;https://connexion.me/c/crm/?v=6cde596c1bb4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;The CRM board asked with buyer context — &lt;a href="https://connexion.me/c/crmctx/?v=f0bf685d5113" rel="noopener noreferrer"&gt;https://connexion.me/c/crmctx/?v=f0bf685d5113&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each board links its own raw files at the bottom: &lt;code&gt;answers-runA.jsonl&lt;/code&gt; is the untouched engine responses, &lt;code&gt;mentions-runA.jsonl&lt;/code&gt; every extraction, &lt;code&gt;ranking.json&lt;/code&gt; the table. Click a product name and you get the questions that named it; click a question and you see the verbatim text each engine returned.&lt;/p&gt;

&lt;p&gt;One of the 44 twins, so you can judge the rewrite rather than take my word for it:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;What call center software do mid-market companies in regulated industries actually use when their call recordings are not allowed to leave their own network?
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If your product is on one of these boards and the line looks wrong to you, tell me — I would rather fix a board than defend one. The previous post in this series exists because someone told me in public that my questions were bad and he was right; this one exists because his fix worked so well that I did not trust it.&lt;/p&gt;

&lt;p&gt;Disclosure, up front rather than buried: connexion.me is mine, the boards and the raw runs are free, and there is a paid monitoring subscription linked from each board page. Nothing here is behind it.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>datascience</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>Changing the AI engine moved 3 of 10 results. Changing the question moved 10 of 10.</title>
      <dc:creator>Lana Plouffe</dc:creator>
      <pubDate>Fri, 07 Aug 2026 02:08:00 +0000</pubDate>
      <link>https://dev.to/lana_connexion/changing-the-ai-engine-moved-3-of-10-results-changing-the-question-moved-10-of-10-3gk1</link>
      <guid>https://dev.to/lana_connexion/changing-the-ai-engine-moved-3-of-10-results-changing-the-question-moved-10-of-10-3gk1</guid>
      <description>&lt;p&gt;I publish free leaderboards of which products AI answer engines name when someone asks them to recommend software in a category. The method is deliberately boring: take one buying question, write it 44 different ways, ask every engine all 44, count every product named across the answers, publish the counts and the raw runs.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.to/lana_connexion/two-words-changed-100-of-the-answers-what-ai-engines-recommend-for-crm-vs-open-source-crm-1acp"&gt;Last week I posted a result&lt;/a&gt; that I could not explain: two boards over what I had assumed was one market — small-business CRM and open-source CRM — came back with &lt;strong&gt;nothing in common in their top 20s&lt;/strong&gt;. Not reordered. Zero shared products.&lt;/p&gt;

&lt;p&gt;The obvious objection, and the one I got, is that this says more about my engines than about the question. LLM output is noisy. Maybe I had measured two engines having a bad day.&lt;/p&gt;

&lt;p&gt;So I ran the controls. There are two knobs — the &lt;strong&gt;engine&lt;/strong&gt; and the &lt;strong&gt;wording&lt;/strong&gt; — and you can hold each one still and turn the other.&lt;/p&gt;

&lt;h2&gt;
  
  
  The setup
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;small-business CRM&lt;/th&gt;
&lt;th&gt;open-source CRM&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;phrasings asked&lt;/td&gt;
&lt;td&gt;44&lt;/td&gt;
&lt;td&gt;44&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;answers&lt;/td&gt;
&lt;td&gt;132&lt;/td&gt;
&lt;td&gt;88&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;engines&lt;/td&gt;
&lt;td&gt;ChatGPT, Gemini and Perplexity&lt;/td&gt;
&lt;td&gt;Gemini and Perplexity&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;distinct products named&lt;/td&gt;
&lt;td&gt;65&lt;/td&gt;
&lt;td&gt;29&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;No product name appears anywhere in any question, on purpose. If you seed the question with vendors you get your own assumptions back.&lt;/p&gt;

&lt;p&gt;Three of the small-business 44, verbatim:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;What is the best CRM software for a 10-person small business?
Best CRM for a small sales team
We're a 15 person agency managing sales leads in spreadsheets and it's a mess. What CRM should we buy?
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Two of the open-source 44:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;What is the best open source CRM software for a small sales team?
Best self-hosted CRM for a 20-person company
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Control 1 — hold the questions, change the engine
&lt;/h2&gt;

&lt;p&gt;Same 44 questions, one board, 3 engines answering them independently. Rank each engine's answers on its own and compare the top tens:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;pair&lt;/th&gt;
&lt;th&gt;products in common, top 10&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ChatGPT vs Gemini&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;8 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ChatGPT vs Perplexity&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;7 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gemini vs Perplexity&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;7 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Swapping the engine leaves at least 7 of the top 10 standing every time, head included. The engines broadly agree.&lt;/p&gt;

&lt;h2&gt;
  
  
  Control 2 — hold the engine, change the wording
&lt;/h2&gt;

&lt;p&gt;Now the other knob. One engine, asked both question sets:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;products in common&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;top 10 vs top 10&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0 of 10&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;all 37 vs all 13&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;1&lt;/strong&gt; — Odoo Community&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Zero. One engine, one week, one extraction pipeline, 37 product names on one side and 13 on the other, and the two top tens do not touch. Across every product either run named, the entire intersection is Odoo Community — which is exactly the product you would predict, because it is the one sold in both shapes.&lt;/p&gt;

&lt;p&gt;The same comparison on the full published boards, which is 132 + 88 answers rather than one engine's share of them: &lt;strong&gt;0&lt;/strong&gt; products in common in the top 20, &lt;strong&gt;2&lt;/strong&gt; across all 65 and 29 — Odoo (Community Edition) and Vtiger.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;That is the finding.&lt;/strong&gt; The engine is the small knob. The wording is the big one. A leaderboard of "which CRM do AI assistants recommend" is not measuring a market, it is measuring a phrasing family, and swapping families does not reorder the list — it replaces it.&lt;/p&gt;

&lt;p&gt;The sharpest single number: SuiteCRM sits at rank 2 on the open-source board, named in &lt;strong&gt;44 of 44&lt;/strong&gt; phrasings of that question and 81 of its 88 answers — and &lt;strong&gt;0 times in 132&lt;/strong&gt; answers to the small-business one. Same product, same week. Counted twice, independently: the extractor's vendor rows, and a case-insensitive regex for &lt;code&gt;suite-?crm&lt;/code&gt; straight over the raw answer text. The two agree, so there is no third number in play. On the single engine held fixed above it is 44 of 44 and 0 of 44.&lt;/p&gt;

&lt;h2&gt;
  
  
  Then someone told me both my question sets were wrong
&lt;/h2&gt;

&lt;p&gt;I took the small-business board &lt;a href="https://community.suitecrm.com/t/i-measured-what-ai-assistants-say-about-small-business-crms-suitecrm-was-named-in-0-of-88-answers/101276" rel="noopener noreferrer"&gt;to the SuiteCRM community forum&lt;/a&gt; rather than publish a zero about somebody's project and say nothing. A consultant with twenty years of CRM projects replied, and the useful half of what he said was that my questions were not wrong in their wording, they were &lt;strong&gt;empty&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Additionally, your questions contain way too little context for a real business scenario.&lt;br&gt;
What are your specific requirements? Do you have any particular needs in a specific&lt;br&gt;
industry? What are your existing system?&lt;/p&gt;

&lt;p&gt;If you ask AI with this context and some more specific requirements (highly sensitive&lt;br&gt;
customer data, can't be stored in a cloud or SaaS) you'll find way more answers containing&lt;br&gt;
SuiteCRM.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That is a falsifiable claim, so I ran it. Each of the 44 board questions was rewritten as its twin, index for index: same buying ask, same register, plus an industry, an existing-systems detail and a sensitivity obligation. Question 0 became:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;We are a 10-person law firm and client matter records are confidential under our professional duty, so our partners will not allow them to sit on a third party's servers; we already run our own file server and mail in the office. What is the best CRM software for us?
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The rule the rewrite was done under is the one that makes the result worth anything: a question may describe &lt;strong&gt;a buyer's situation&lt;/strong&gt; and may never describe &lt;strong&gt;a product's category&lt;/strong&gt;. No "open source", no "self-hosted", no "on-premise", no "data sovereignty", and no vendor name from the board. Writing SuiteCRM's own positioning back at the engine would have returned 44 of 44 and measured nothing. A script greps all 44 questions for those phrases and for every one of the 65 vendor names on the board, and it ran before a single API call. It caught one: question 11 said "pipeline CRM", and Pipedrive is on the board. Rewritten, re-run, zero hits.&lt;/p&gt;

&lt;p&gt;Engines, extraction prompt and aliases were loaded out of the board's own config at import rather than copied, so the only thing that changed was the question.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;He was right, and it is not close.&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;engine&lt;/th&gt;
&lt;th&gt;SuiteCRM, no context&lt;/th&gt;
&lt;th&gt;with context&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ChatGPT&lt;/td&gt;
&lt;td&gt;0 / 44&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;42 / 44&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gemini&lt;/td&gt;
&lt;td&gt;0 / 44&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;33 / 44&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Perplexity&lt;/td&gt;
&lt;td&gt;0 / 44&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;8 / 44&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;all three&lt;/td&gt;
&lt;td&gt;0 / 132&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;83 / 132&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;It goes from absent to first on ChatGPT and joint first on Gemini. And the top of the board moves with it — top-10 overlap between the board and its context twin, per engine: &lt;strong&gt;4 of 10&lt;/strong&gt; on ChatGPT, &lt;strong&gt;4 of 10&lt;/strong&gt; on Gemini, &lt;strong&gt;6 of 10&lt;/strong&gt; on Perplexity. The context run names 109 distinct products against the board's 65.&lt;/p&gt;

&lt;h2&gt;
  
  
  The part I did not expect, and the reason I am writing this up
&lt;/h2&gt;

&lt;p&gt;Look down the "with context" column rather than across it.&lt;/p&gt;

&lt;p&gt;The same 44 questions, the same added constraint, both runs inside the same hour — and one engine moves 42 of 44 while another moves 8. That is not a small disagreement about ranking. The engines disagree about &lt;strong&gt;how much a buyer's stated constraint should change the answer at all&lt;/strong&gt;, and they disagree by more than they disagree about the answer itself.&lt;/p&gt;

&lt;p&gt;Which inverts the tidy conclusion I had two sections ago. Wording beats engine — but &lt;em&gt;how much&lt;/em&gt; wording beats engine is itself engine-dependent. If you are evaluating LLM output at any scale, both halves of that matter: a prompt-sensitivity result measured on one model is not a fact about models, and a model comparison run on one prompt is not a fact about the models either. The interaction term is the biggest thing on the table and it is the one nobody publishes.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I can't claim from this
&lt;/h2&gt;

&lt;p&gt;I would rather put the limits in the post than in a footnote.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The context run was unpublished when I wrote this. It is a live board now, so this caveat is spent.&lt;/strong&gt; When this post went up, the two boards below were live with their raw answers and that third run was not on the site, which made those three context numbers the only ones here you could not go and check yourself. That is no longer true: the run is published, with the same raw answer files as the others, at &lt;a href="https://connexion.me/c/crmctx/?v=734ec29edd6e" rel="noopener noreferrer"&gt;https://connexion.me/c/crmctx/?v=734ec29edd6e&lt;/a&gt; — so every figure in this post is now checkable against a file. I am correcting the caveat in place rather than deleting it, because it was accurate when you first read it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Two model families and one search product&lt;/strong&gt;, named on each board's own &lt;code&gt;ranking.json&lt;/code&gt;. No Claude, no Grok — no API key for either, a limit and not a choice. Two of the three model ids I requested are floating aliases; each run records the pinned id the API actually returned.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No time series, and I am not going to imply one.&lt;/strong&gt; Each board carries a second run as a repeatability check rather than a second date — and the small-business board's two runs are not even contemporaneous, because I re-measured it when I added a third engine. So a product at 1 mention is a &lt;em&gt;level&lt;/em&gt;, not a decline. Nothing here is rising, falling or fading.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Named is not recommended.&lt;/strong&gt; I count that a product appeared in an answer to a buying question. "Consider X", "X is common but", and a bare list item all count the same. Read it as share of shelf, not endorsement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One family each.&lt;/strong&gt; 44 phrasings is a wide sample of one intent, not a market. There are certainly qualifiers I have not tried that would split a list again — that is rather the point.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The rewrite is mine.&lt;/strong&gt; I wrote the 44 context twins, under the rule above and with the grep as a check, but a different person writing them would get a different number.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The raw data
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Small-business CRM board — &lt;a href="https://connexion.me/c/crm/?v=1443328a0bcf" rel="noopener noreferrer"&gt;https://connexion.me/c/crm/?v=1443328a0bcf&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Open-source CRM board — &lt;a href="https://connexion.me/c/oscrm/?v=1438f5015a25" rel="noopener noreferrer"&gt;https://connexion.me/c/oscrm/?v=1438f5015a25&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each board links its own raw files at the bottom: &lt;code&gt;answers-runA.jsonl&lt;/code&gt; is the untouched engine responses, &lt;code&gt;mentions-runA.jsonl&lt;/code&gt; every extraction, &lt;code&gt;ranking.json&lt;/code&gt; the table. Click a product name and you get the questions that named it; click a question and you see the verbatim text each engine returned. Every figure above except the three context ones came out of those files.&lt;/p&gt;

&lt;p&gt;If your project is on one of these boards and the line looks wrong to you, tell me — I would rather fix a board than defend one. That is not a figure of speech: this whole post exists because someone told me my questions were bad in public and he was right.&lt;/p&gt;

&lt;p&gt;Disclosure, up front rather than buried: connexion.me is mine, the boards and the raw runs are free, and there is a paid monitoring subscription linked from each board page. Nothing here is behind it.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>opensource</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Two words changed 100% of the answers: what AI engines recommend for "CRM" vs "open source CRM"</title>
      <dc:creator>Lana Plouffe</dc:creator>
      <pubDate>Thu, 06 Aug 2026 11:34:22 +0000</pubDate>
      <link>https://dev.to/lana_connexion/two-words-changed-100-of-the-answers-what-ai-engines-recommend-for-crm-vs-open-source-crm-1acp</link>
      <guid>https://dev.to/lana_connexion/two-words-changed-100-of-the-answers-what-ai-engines-recommend-for-crm-vs-open-source-crm-1acp</guid>
      <description>&lt;p&gt;I publish leaderboards that measure which products AI assistants name when someone asks them to recommend software in a category. The method is deliberately boring: take one buying question, write it 44 different ways, ask each engine all 44, count every product named across the answers, publish the counts and the raw runs.&lt;/p&gt;

&lt;p&gt;Last week I ran that method twice over what I had assumed was one market. The two vendor lists came back with nothing in common — not "reordered", not "one newcomer", &lt;strong&gt;zero products shared between the two top 20s&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The only difference between the two runs was two words in the question.&lt;/p&gt;

&lt;h2&gt;
  
  
  What was asked
&lt;/h2&gt;

&lt;p&gt;Two boards, same two engines, same shape.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;small-business CRM&lt;/th&gt;
&lt;th&gt;open-source CRM&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;phrasings asked&lt;/td&gt;
&lt;td&gt;44&lt;/td&gt;
&lt;td&gt;44&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;answers&lt;/td&gt;
&lt;td&gt;88&lt;/td&gt;
&lt;td&gt;88&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;engines&lt;/td&gt;
&lt;td&gt;Gemini, Perplexity&lt;/td&gt;
&lt;td&gt;Gemini, Perplexity&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;distinct products named&lt;/td&gt;
&lt;td&gt;53&lt;/td&gt;
&lt;td&gt;29&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;No product name appears anywhere in the questions, on purpose — if you seed the question with vendors you get your own assumptions back. The list has to be whatever the engine says.&lt;/p&gt;

&lt;p&gt;Three of board one's 44, verbatim:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;What is the best CRM software for a 10-person small business?
Best CRM for a small sales team
We're a 15 person agency managing sales leads in spreadsheets and it's a mess. What CRM should we buy?
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Three of board two's 44:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;What is the best open source CRM software for a small sales team?
Best self-hosted CRM for a 20-person company
We want to host our own CRM on-premise to control customer data privacy. What open source options should we evaluate?
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Same buyer, same problem, same two engines, same week. One set of questions says "open source" and "self-hosted"; the other does not.&lt;/p&gt;

&lt;h2&gt;
  
  
  What came back
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Small-business CRM — top 10 of 53&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;product&lt;/th&gt;
&lt;th&gt;answers naming it&lt;/th&gt;
&lt;th&gt;share of 88&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;HubSpot CRM&lt;/td&gt;
&lt;td&gt;79&lt;/td&gt;
&lt;td&gt;89.8%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Pipedrive&lt;/td&gt;
&lt;td&gt;75&lt;/td&gt;
&lt;td&gt;85.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Zoho CRM&lt;/td&gt;
&lt;td&gt;48&lt;/td&gt;
&lt;td&gt;54.5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Less Annoying CRM&lt;/td&gt;
&lt;td&gt;22&lt;/td&gt;
&lt;td&gt;25.0%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Freshsales&lt;/td&gt;
&lt;td&gt;14&lt;/td&gt;
&lt;td&gt;15.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Salesforce&lt;/td&gt;
&lt;td&gt;11&lt;/td&gt;
&lt;td&gt;12.5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;monday CRM&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;11.4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;Salesflare&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;11.4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;Nutshell&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;9.1%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;Close&lt;/td&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;8.0%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Open-source CRM — top 10 of 29&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;product&lt;/th&gt;
&lt;th&gt;answers naming it&lt;/th&gt;
&lt;th&gt;share of 88&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;EspoCRM&lt;/td&gt;
&lt;td&gt;82&lt;/td&gt;
&lt;td&gt;93.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;SuiteCRM&lt;/td&gt;
&lt;td&gt;81&lt;/td&gt;
&lt;td&gt;92.0%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Odoo (Community Edition)&lt;/td&gt;
&lt;td&gt;43&lt;/td&gt;
&lt;td&gt;48.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Twenty&lt;/td&gt;
&lt;td&gt;41&lt;/td&gt;
&lt;td&gt;46.6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;SugarCRM&lt;/td&gt;
&lt;td&gt;16&lt;/td&gt;
&lt;td&gt;18.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Vtiger&lt;/td&gt;
&lt;td&gt;16&lt;/td&gt;
&lt;td&gt;18.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;ERPNext&lt;/td&gt;
&lt;td&gt;11&lt;/td&gt;
&lt;td&gt;12.5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;Krayin&lt;/td&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;10.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;Dolibarr&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;4.5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;YetiForce&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;4.5%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  The overlap
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;comparison&lt;/th&gt;
&lt;th&gt;products in common&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;top 20 vs top 20&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;all 53 vs all 29&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;1&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;That single product is &lt;strong&gt;Vtiger&lt;/strong&gt; — and it is exactly the one you would predict, because it is the one sold in both shapes: an open-source self-hosted edition and a cloud product under the same brand. On the open-source board it is 6th with 16 mentions. On the small-business board it is 52nd of 53, named in &lt;strong&gt;one&lt;/strong&gt; answer out of 88.&lt;/p&gt;

&lt;p&gt;The comparison is done on a lenient normalisation (lowercase, strip non-alphanumerics, drop parentheticals and a trailing "crm"), so the 0 is not an artefact of "HubSpot CRM" not matching "HubSpot". I went looking for false zeros and didn't find one.&lt;/p&gt;

&lt;h2&gt;
  
  
  The number that actually stopped me
&lt;/h2&gt;

&lt;p&gt;It isn't on either table.&lt;/p&gt;

&lt;p&gt;Across 88 answers and 53 distinct products, the small-business question returned &lt;strong&gt;exactly one product with an open-source edition, named exactly once&lt;/strong&gt;. Not one open-source product in the top 20. Not one in the top 40. Vtiger, at rank 52.&lt;/p&gt;

&lt;p&gt;Meanwhile SuiteCRM — absent from that board entirely — is named in &lt;strong&gt;44 of 44&lt;/strong&gt; phrasings of the open-source question, and EspoCRM in 43 of 44. These are not obscure projects that the engines had never heard of. They were sitting right there, and the generic question did not reach them.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I think this means
&lt;/h2&gt;

&lt;p&gt;Not that either board is wrong. HubSpot really does appear to be what these two engines answer when a small business asks for a CRM, and that is a real fact about a real question a real buyer types.&lt;/p&gt;

&lt;p&gt;What's wrong is the &lt;em&gt;category&lt;/em&gt; framing — mine included. I had been treating "CRM" as the unit of measurement. It isn't. &lt;strong&gt;The unit is the phrasing family.&lt;/strong&gt; Two words of qualifier didn't reorder a list; they swapped out the entire list, because they moved the buyer from one purchase to a different purchase that happens to share a noun.&lt;/p&gt;

&lt;p&gt;If you maintain an open-source product, the practical version is this: &lt;em&gt;"are we mentioned by AI assistants"&lt;/em&gt; is not one question with one answer. Your absence from the generic phrasing may be telling you nothing at all about you, and quite a lot about which buyer that phrasing describes. Before you read a zero as a verdict, find out which question produced it.&lt;/p&gt;

&lt;p&gt;And if you're building anything that measures LLM output at scale, the transferable bit is that the phrasing set &lt;em&gt;is&lt;/em&gt; the experiment. Mine is 44 phrasings, published, so you can look at exactly which buyer I asked about and decide whether that's your buyer.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I can't claim from this
&lt;/h2&gt;

&lt;p&gt;I'd rather put the limits in the post than in a footnote.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Two engines.&lt;/strong&gt; Gemini and Perplexity — the two that answered these two boards. Not ChatGPT, not Claude, not Grok. Each board's &lt;code&gt;ranking.json&lt;/code&gt; records which engines actually answered it, and I don't name one that didn't.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No direction.&lt;/strong&gt; Each board was measured twice, minutes apart, as a repeatability check — not on two different dates. So nothing here is rising, falling, gaining or fading. A product at 1 mention is a &lt;em&gt;level&lt;/em&gt;, not a decline. I have no time series and won't pretend to.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Named is not recommended.&lt;/strong&gt; I count that a product appeared in an answer to a buying question. Some of those mentions are "consider X"; some are "X is a common choice but"; some are a list item. Counted the same. Read it as share of shelf, not endorsement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One family each.&lt;/strong&gt; 44 phrasings is a wide sample of one intent, not the whole market. There are certainly qualifiers I didn't try that would split the list again.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The raw data
&lt;/h2&gt;

&lt;p&gt;Both boards, both runs, every answer verbatim:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open-source CRM board — &lt;a href="https://connexion.me/c/oscrm/?v=582c11c84669" rel="noopener noreferrer"&gt;https://connexion.me/c/oscrm/?v=582c11c84669&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Small-business CRM board — &lt;a href="https://connexion.me/c/crm/?v=e14dfd19c148" rel="noopener noreferrer"&gt;https://connexion.me/c/crm/?v=e14dfd19c148&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each board links its own raw files at the bottom — &lt;code&gt;answers-runA.jsonl&lt;/code&gt; and &lt;code&gt;answers-runB.jsonl&lt;/code&gt; are the untouched engine responses, &lt;code&gt;mentions-runA.jsonl&lt;/code&gt; is every extraction, and &lt;code&gt;ranking.json&lt;/code&gt; is the table above. Every figure in this post came out of those files. Click a product name on the board and you get the questions that named it; click a question and you see the verbatim text each engine returned.&lt;/p&gt;

&lt;p&gt;If your project is one of the 29 and the line looks wrong to me, tell me — I would rather fix a board than defend one. And if you know a qualifier that ought to split a market and doesn't, I'll measure it and post what comes back either way.&lt;/p&gt;

&lt;p&gt;Disclosure, since it belongs up front rather than buried: connexion.me is mine, the boards and both raw runs are free, and there is a paid monitoring subscription linked from each board page. Nothing in this post is behind it.&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>ai</category>
      <category>crm</category>
      <category>data</category>
    </item>
  </channel>
</rss>
