<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>LLMJury Blog</title>
  <subtitle>Run live A/B tests on your prompts and models, version prompts outside your codebase, and get a plain-English verdict backed by real statistics — LLM evaluation with proof, not gut feeling.</subtitle>
  <link href="https://llmjury.com/atom.xml" rel="self"/>
  <link href="https://llmjury.com/blog"/>
  <id>https://llmjury.com/blog</id>
  <updated>2026-08-07T12:00:00.000Z</updated>
  <author><name>LLMJury</name></author>
  <entry>
    <title>How to choose an LLM for your product</title>
    <link href="https://llmjury.com/blog/how-to-choose-an-llm"/>
    <id>https://llmjury.com/blog/how-to-choose-an-llm</id>
    <updated>2026-08-07T12:00:00.000Z</updated>
    <published>2026-08-07T12:00:00.000Z</published>
    <summary>A leaderboard measures the model; your product is the model plus your prompt plus your traffic. Nine criteria with how to measure each on your own inputs — and why the prompt you tuned for the incumbent is a rigged instrument for testing a challenger.</summary>
    <category term="model selection"/>
    <category term="evaluation"/>
    <category term="experimentation"/>
  </entry>
  <entry>
    <title>How do you evaluate an AI agent?</title>
    <link href="https://llmjury.com/blog/evaluating-ai-agents"/>
    <id>https://llmjury.com/blog/evaluating-ai-agents</id>
    <updated>2026-08-06T12:00:00.000Z</updated>
    <published>2026-08-06T12:00:00.000Z</published>
    <summary>Outcome decides, trajectory explains, cost constrains. Why the outcome assertion has to come from outside the agent, why a golden path punishes a better route, and why nine sampling steps mean more traffic rather than less.</summary>
    <category term="agents"/>
    <category term="evaluation"/>
    <category term="metrics"/>
  </entry>
  <entry>
    <title>Same prompt, different answer: testing a model that won’t sit still</title>
    <link href="https://llmjury.com/blog/llm-non-determinism-testing"/>
    <id>https://llmjury.com/blog/llm-non-determinism-testing</id>
    <updated>2026-08-05T12:00:00.000Z</updated>
    <published>2026-08-05T12:00:00.000Z</published>
    <summary>Temperature 0 makes decoding greedy, not deterministic — and the reasons are floating-point, batching, and routing. The reframe that fixes it: one output against one output is n = 1, and nobody accepts that anywhere else in engineering.</summary>
    <category term="statistics"/>
    <category term="evaluation"/>
    <category term="prompt engineering"/>
  </entry>
  <entry>
    <title>Can you trust an LLM to grade an LLM?</title>
    <link href="https://llmjury.com/blog/can-you-trust-llm-as-judge"/>
    <id>https://llmjury.com/blog/can-you-trust-llm-as-judge</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>The objection is fair, and weaker than it looks. Position bias, verbosity bias, self-preference, rubric drift — and the reframe that resolves the argument: a judge doesn’t have to be right, it has to be wrong the same way for both arms.</summary>
    <category term="LLM-as-judge"/>
    <category term="evaluation"/>
    <category term="statistics"/>
  </entry>
  <entry>
    <title>How much traffic do you need to A/B test a prompt?</title>
    <link href="https://llmjury.com/blog/how-much-traffic-do-you-need"/>
    <id>https://llmjury.com/blog/how-much-traffic-do-you-need</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>“We’re too small to A/B test” is usually wrong. A sample-size table for the metrics teams actually run — task success, judge quality, cost, latency — and the four levers that make small traffic workable.</summary>
    <category term="A/B testing"/>
    <category term="statistics"/>
    <category term="experimentation"/>
  </entry>
  <entry>
    <title>Get your prompts out of your codebase</title>
    <link href="https://llmjury.com/blog/prompt-versioning-guide"/>
    <id>https://llmjury.com/blog/prompt-versioning-guide</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>A hardcoded prompt means a deploy to change a comma, no real rollback, no history — and, invisibly, no way to run two versions at once. The five properties a prompt version actually needs.</summary>
    <category term="prompt engineering"/>
    <category term="prompt versioning"/>
    <category term="production"/>
  </entry>
  <entry>
    <title>Your experiment is lying to you: sample ratio mismatch</title>
    <link href="https://llmjury.com/blog/sample-ratio-mismatch"/>
    <id>https://llmjury.com/blog/sample-ratio-mismatch</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>A 3% imbalance on 100,000 users is not noise, it is a bug — and it invalidates every number in the experiment, not just the split. What causes SRM, why a timeout is the LLM-specific culprit, and why you must never reweight.</summary>
    <category term="SRM"/>
    <category term="statistics"/>
    <category term="experimentation"/>
  </entry>
  <entry>
    <title>Upgrading to a new model without breaking your product</title>
    <link href="https://llmjury.com/blog/model-upgrade-without-regressions"/>
    <id>https://llmjury.com/blog/model-upgrade-without-regressions</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>The new model benchmarks better and performs worse, because your prompt is a fossil record of the old model’s flaws. A five-step migration sequence with exit criteria, and why you should leave a comparison arm running forever.</summary>
    <category term="model migration"/>
    <category term="A/B testing"/>
    <category term="production"/>
  </entry>
  <entry>
    <title>Cutting LLM costs without cutting quality</title>
    <link href="https://llmjury.com/blog/cheaper-model-same-quality"/>
    <id>https://llmjury.com/blog/cheaper-model-same-quality</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>Four levers ranked by effort, and the statistical point that decides it: you are not asking whether the cheap model is better, you are asking whether it is worse by less than you will trade for the money. That is a non-inferiority test.</summary>
    <category term="cost"/>
    <category term="A/B testing"/>
    <category term="production"/>
  </entry>
  <entry>
    <title>When can you call it? Peeking, p-hacking, and stopping an experiment</title>
    <link href="https://llmjury.com/blog/when-can-you-call-it"/>
    <id>https://llmjury.com/blog/when-can-you-call-it</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>Fourteen daily looks at a p-value turns a 5% error rate into roughly one in five — and inflates every effect you report. Stopping rules that a real team will actually follow, plus the five lines to write down before you start.</summary>
    <category term="statistics"/>
    <category term="experimentation"/>
    <category term="A/B testing"/>
  </entry>
  <entry>
    <title>The silent regression: why LLM quality drops and nobody notices</title>
    <link href="https://llmjury.com/blog/the-silent-regression"/>
    <id>https://llmjury.com/blog/the-silent-regression</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>No alert fires, because nothing breaks — the answers are still fluent, confident, and worse. Six causes with the detection method for each, and why a site-wide average is where regressions hide.</summary>
    <category term="production"/>
    <category term="evaluation"/>
    <category term="monitoring"/>
  </entry>
  <entry>
    <title>What to actually measure in an LLM product</title>
    <link href="https://llmjury.com/blog/what-to-measure-llm-product"/>
    <id>https://llmjury.com/blog/what-to-measure-llm-product</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>Quality, operational, behavioural, business — four layers, what each answers, how fast it moves, and the trap in each. Plus why watching twenty metrics makes you less able to detect the effect you care about.</summary>
    <category term="metrics"/>
    <category term="evaluation"/>
    <category term="experimentation"/>
  </entry>
  <entry>
    <title>A/B testing your RAG pipeline</title>
    <link href="https://llmjury.com/blog/ab-testing-rag"/>
    <id>https://llmjury.com/blog/ab-testing-rag</id>
    <updated>2026-08-04T12:00:00.000Z</updated>
    <published>2026-08-04T12:00:00.000Z</published>
    <summary>Chunk size 512 because a blog post said so. Eight knobs, what each trades against, how to test it — and why retrieval metrics are diagnostic while end-to-end quality is the decision.</summary>
    <category term="RAG"/>
    <category term="A/B testing"/>
    <category term="evaluation"/>
  </entry>
  <entry>
    <title>How to put a number on hallucination</title>
    <link href="https://llmjury.com/blog/measuring-hallucination-rate"/>
    <id>https://llmjury.com/blog/measuring-hallucination-rate</id>
    <updated>2026-08-03T12:00:00.000Z</updated>
    <published>2026-08-03T12:00:00.000Z</published>
    <summary>“Hallucination rate” is four different failures wearing one word. The taxonomy with a detection method for each, why groundedness has to be scored per claim rather than per answer, and why the absolute number belongs nowhere near a sales deck.</summary>
    <category term="evaluation"/>
    <category term="LLM-as-judge"/>
    <category term="RAG"/>
  </entry>
  <entry>
    <title>Fine-tuning or prompting: which problem do you actually have?</title>
    <link href="https://llmjury.com/blog/fine-tuning-vs-prompting"/>
    <id>https://llmjury.com/blog/fine-tuning-vs-prompting</id>
    <updated>2026-08-02T12:00:00.000Z</updated>
    <published>2026-08-02T12:00:00.000Z</published>
    <summary>“The prompt isn’t working” is four problems wearing one sentence, and fine-tuning fixes one of them. The symptom-to-technique table, the four costs that land after the training run, and why most published fine-tuning wins are measured against a first-draft prompt.</summary>
    <category term="fine-tuning"/>
    <category term="model selection"/>
    <category term="prompt engineering"/>
  </entry>
  <entry>
    <title>How to write a judge rubric that means the same thing in six months</title>
    <link href="https://llmjury.com/blog/writing-judge-rubrics"/>
    <id>https://llmjury.com/blog/writing-judge-rubrics</id>
    <updated>2026-08-01T12:00:00.000Z</updated>
    <published>2026-08-01T12:00:00.000Z</published>
    <summary>Ninety per cent of your scores are a 4 because an unanchored scale measures the judge’s prior, not your product. An anchored 1–5 table you can copy, six rules for the rubric itself, and why the rubric, the model, and the temperature version as one unit.</summary>
    <category term="LLM-as-judge"/>
    <category term="evaluation"/>
    <category term="metrics"/>
  </entry>
  <entry>
    <title>A/B testing a chatbot: what counts as one observation?</title>
    <link href="https://llmjury.com/blog/ab-testing-chatbots-multi-turn"/>
    <id>https://llmjury.com/blog/ab-testing-chatbots-multi-turn</id>
    <updated>2026-07-31T12:00:00.000Z</updated>
    <published>2026-07-31T12:00:00.000Z</published>
    <summary>Sixty thousand turns is not sixty thousand observations. The unit-of-analysis error doesn’t make an experiment noisy, it makes it overconfident — plus which metrics live at turn, conversation, and user level, and why turns-to-resolution lies on its own.</summary>
    <category term="A/B testing"/>
    <category term="experimentation"/>
    <category term="statistics"/>
  </entry>
  <entry>
    <title>Your experiment came back flat. Now what?</title>
    <link href="https://llmjury.com/blog/null-result-playbook"/>
    <id>https://llmjury.com/blog/null-result-playbook</id>
    <updated>2026-07-30T12:00:00.000Z</updated>
    <published>2026-07-30T12:00:00.000Z</published>
    <summary>“No significant difference” is three different results with the same p-value, and only the confidence interval tells them apart. What a null actually buys you, the four things not to do next, and why most flat results are a design problem rather than a traffic problem.</summary>
    <category term="statistics"/>
    <category term="experimentation"/>
    <category term="A/B testing"/>
  </entry>
  <entry>
    <title>When the JSON stops parsing: structured output as a metric</title>
    <link href="https://llmjury.com/blog/structured-output-reliability"/>
    <id>https://llmjury.com/blog/structured-output-reliability</id>
    <updated>2026-07-29T12:00:00.000Z</updated>
    <published>2026-07-29T12:00:00.000Z</published>
    <summary>“Valid” is five different claims, and the one that hurts is a well-formed object with an invented enum member falling through a switch with no default. Why truncation is usually the culprit, and why compliance is the cheapest guardrail you can declare.</summary>
    <category term="production"/>
    <category term="metrics"/>
    <category term="evaluation"/>
  </entry>
  <entry>
    <title>The average is hiding the answer: segmenting LLM experiments</title>
    <link href="https://llmjury.com/blog/segmenting-llm-experiments"/>
    <id>https://llmjury.com/blog/segmenting-llm-experiments</id>
    <updated>2026-07-28T12:00:00.000Z</updated>
    <published>2026-07-28T12:00:00.000Z</published>
    <summary>Almost every prompt change trades one segment against another, so a flat average is a suspicious result rather than a boring one. A worked Simpson’s paradox where the pooled split passes an SRM check, the segments worth declaring, and why a split result is a design brief.</summary>
    <category term="statistics"/>
    <category term="metrics"/>
    <category term="experimentation"/>
  </entry>
  <entry>
    <title>LLM latency: the number your users actually feel</title>
    <link href="https://llmjury.com/blog/llm-latency-what-users-feel"/>
    <id>https://llmjury.com/blog/llm-latency-what-users-feel</id>
    <updated>2026-07-27T12:00:00.000Z</updated>
    <published>2026-07-27T12:00:00.000Z</published>
    <summary>TTFT, tokens per second, total completion, end-to-end — four numbers that diverge, and your interface decides which one matters. Why the tail is fat, why output length is the real lever, and why a latency gap between arms is usually an SRM.</summary>
    <category term="latency"/>
    <category term="production"/>
    <category term="metrics"/>
  </entry>
  <entry>
    <title>Thumbs up is not a metric: reading what users actually tell you</title>
    <link href="https://llmjury.com/blog/user-feedback-signals"/>
    <id>https://llmjury.com/blog/user-feedback-signals</id>
    <updated>2026-07-26T12:00:00.000Z</updated>
    <published>2026-07-26T12:00:00.000Z</published>
    <summary>97% positive on a 1.5% response rate is a self-selected sample doing exactly what it should. Nine implicit signals with what each means and how each misleads, why a proxy needs validating once, and why behavioural metrics resolve before judge scores do.</summary>
    <category term="metrics"/>
    <category term="evaluation"/>
    <category term="production"/>
  </entry>
  <entry>
    <title>Measuring what your LLM does under attack</title>
    <link href="https://llmjury.com/blog/prompt-injection-monitoring"/>
    <id>https://llmjury.com/blog/prompt-injection-monitoring</id>
    <updated>2026-07-25T12:00:00.000Z</updated>
    <published>2026-07-25T12:00:00.000Z</published>
    <summary>Injection has no clean fix, so the answerable question is what fraction gets through and whether that moved. Blocked, deflected, complied, over-refused — and why the outcome nobody counts is the one that quietly costs you real users.</summary>
    <category term="security"/>
    <category term="production"/>
    <category term="monitoring"/>
  </entry>
  <entry>
    <title>Bandits or A/B tests for LLM features?</title>
    <link href="https://llmjury.com/blog/bandits-vs-ab-testing"/>
    <id>https://llmjury.com/blog/bandits-vs-ab-testing</id>
    <updated>2026-07-24T12:00:00.000Z</updated>
    <published>2026-07-24T12:00:00.000Z</published>
    <summary>A bandit optimises, an experiment explains — and you get one. The comparison table, plus the reason bandits fit LLM products badly: they need fast feedback, and a judge score sampled at 5% on a batch is not fast feedback.</summary>
    <category term="A/B testing"/>
    <category term="experimentation"/>
    <category term="statistics"/>
  </entry>
  <entry>
    <title>Can you run two LLM experiments at the same time?</title>
    <link href="https://llmjury.com/blog/multiple-experiments-at-once"/>
    <id>https://llmjury.com/blog/multiple-experiments-at-once</id>
    <updated>2026-07-23T12:00:00.000Z</updated>
    <published>2026-07-23T12:00:00.000Z</published>
    <summary>Independent randomisation makes a concurrent experiment noise rather than bias — so the default answer is yes, and queueing has a cost nobody puts on a dashboard. The four cases where it breaks, and the two-line salt bug that silently correlates every arm.</summary>
    <category term="experimentation"/>
    <category term="A/B testing"/>
    <category term="statistics"/>
  </entry>
  <entry>
    <title>Prompt caching: the discount most teams leave on the table</title>
    <link href="https://llmjury.com/blog/prompt-caching-cost"/>
    <id>https://llmjury.com/blog/prompt-caching-cost</id>
    <updated>2026-07-22T12:00:00.000Z</updated>
    <published>2026-07-22T12:00:00.000Z</published>
    <summary>The cache breaks at the first token that differs, and everything below it is recomputed at full price — so one timestamp near the top of a 3,000-token system prompt voids the whole discount. Order by volatility, and track hit rate per variant.</summary>
    <category term="cost"/>
    <category term="latency"/>
    <category term="production"/>
  </entry>
  <entry>
    <title>How to test an LLM feature before you have users</title>
    <link href="https://llmjury.com/blog/testing-before-you-have-users"/>
    <id>https://llmjury.com/blog/testing-before-you-have-users</id>
    <updated>2026-07-21T12:00:00.000Z</updated>
    <published>2026-07-21T12:00:00.000Z</published>
    <summary>You can’t A/B test at forty users, which is not the same as being unable to measure. What each stage can and cannot tell you, the six things that work with no traffic, and why the plumbing is the expensive part rather than the statistics.</summary>
    <category term="evaluation"/>
    <category term="experimentation"/>
    <category term="prompt engineering"/>
  </entry>
  <entry>
    <title>Build your eval set out of production traffic</title>
    <link href="https://llmjury.com/blog/eval-set-from-production"/>
    <id>https://llmjury.com/blog/eval-set-from-production</id>
    <updated>2026-07-20T12:00:00.000Z</updated>
    <published>2026-07-20T12:00:00.000Z</published>
    <summary>Invented examples measure how you handle a user who read the docs; model-generated ones share your model’s blind spot by construction. The five strata with their shares, why the rubric matters more than the labels, and the questions your product can’t answer.</summary>
    <category term="evaluation"/>
    <category term="experimentation"/>
    <category term="production"/>
  </entry>
  <entry>
    <title>Writing up an experiment so the decision actually sticks</title>
    <link href="https://llmjury.com/blog/reporting-experiment-results"/>
    <id>https://llmjury.com/blog/reporting-experiment-results</id>
    <updated>2026-07-19T12:00:00.000Z</updated>
    <published>2026-07-19T12:00:00.000Z</published>
    <summary>An experiment’s output is a decision plus the record that makes it re-examinable — otherwise the losing variant gets re-proposed in six weeks. A seven-section template, how to state uncertainty to people who won’t hear “significant” correctly, and the incentive check.</summary>
    <category term="experimentation"/>
    <category term="metrics"/>
    <category term="production"/>
  </entry>
  <entry>
    <title>Logging LLM traffic without creating a privacy incident</title>
    <link href="https://llmjury.com/blog/logging-llm-traffic-privacy"/>
    <id>https://llmjury.com/blog/logging-llm-traffic-privacy</id>
    <updated>2026-07-18T12:00:00.000Z</updated>
    <published>2026-07-18T12:00:00.000Z</published>
    <summary>The numbers an experiment needs are not the text. The minimum viable event, field by field, with what is personal data and what isn’t — plus why a pseudonymous id is still in scope, and why text and metrics need completely different retention.</summary>
    <category term="privacy"/>
    <category term="production"/>
  </entry>
  <entry>
    <title>Why prompt changes deserve A/B tests, not vibes</title>
    <link href="https://llmjury.com/blog/why-ab-test-prompts"/>
    <id>https://llmjury.com/blog/why-ab-test-prompts</id>
    <updated>2026-07-16T12:00:00.000Z</updated>
    <published>2026-07-16T12:00:00.000Z</published>
    <summary>Ten playground outputs can’t tell you what a prompt change does to real traffic. The case for measuring every prompt edit the way you measure every other production change.</summary>
    <category term="A/B testing"/>
    <category term="prompt engineering"/>
    <category term="experimentation"/>
  </entry>
  <entry>
    <title>Offline evals aren’t enough: why prompts need testing on live traffic</title>
    <link href="https://llmjury.com/blog/offline-evals-are-not-enough"/>
    <id>https://llmjury.com/blog/offline-evals-are-not-enough</id>
    <updated>2026-07-16T12:00:00.000Z</updated>
    <published>2026-07-16T12:00:00.000Z</published>
    <summary>Golden datasets are unit tests, not proof. Distribution drift, eval overfitting, and the metrics that only exist in production — latency, cost, and what users do next.</summary>
    <category term="evaluation"/>
    <category term="LLM-as-judge"/>
    <category term="production"/>
  </entry>
  <entry>
    <title>Announcing LLMJury: statistically defensible A/B testing for LLM products</title>
    <link href="https://llmjury.com/blog/announcing-llmjury"/>
    <id>https://llmjury.com/blog/announcing-llmjury</id>
    <updated>2026-07-01T12:00:00.000Z</updated>
    <published>2026-07-01T12:00:00.000Z</published>
    <summary>Why “it feels better” is not an eval strategy, and how SRM gates, FDR correction, and an LLM judge make prompt experiments trustworthy.</summary>
    <category term="announcements"/>
    <category term="statistics"/>
    <category term="SRM"/>
    <category term="FDR"/>
  </entry>
</feed>
