[{"data":1,"prerenderedAt":870},["ShallowReactive",2],{"insight-insights_en-every-agent-needs-a-judge":3,"insight-related-insights_en-every-agent-needs-a-judge":219},{"id":4,"title":5,"author":6,"blobHue":10,"body":11,"category":194,"date":195,"description":17,"draft":196,"extension":197,"featured":196,"headline":198,"hue":199,"letter":200,"meta":201,"navigation":202,"path":203,"readMinutes":204,"related":205,"seo":209,"stem":210,"summary":211,"toc":212,"__hash__":218},"insights_en\u002Finsights\u002Fevery-agent-needs-a-judge.md","Every agent needs a judge",{"name":7,"role":8,"bio":9},"André","Founder & CTO","André is the founder and CTO of WizardingCode. Eight years building the software companies run on, now putting agents into production.",null,{"type":12,"value":13,"toc":185},"minimark",[14,18,21,26,29,32,35,39,42,117,120,123,127,130,153,156,160,163,166,169,175,179,182],[15,16,17],"p",{},"A language model is very good at sounding right. That is the problem. An answer with a wrong refund amount reads exactly as confidently as one with the right amount, and a person skimming a queue of drafts will not catch it every time.",[15,19,20],{},"So we don’t ask people to catch it. In the marketplace system we built, 90 agents work across eight departments, and every team has a judge: 9 judges in all. A judge is a second model whose only job is to check another agent’s answer before anyone relies on it.",[22,23,25],"h2",{"id":24},"why-a-second-model","Why a second model",[15,27,28],{},"Asking the same model to review its own work helps less than you would think. It tends to agree with itself, and it shares the blind spots that produced the mistake in the first place.",[15,30,31],{},"That is why our judges run on a different model family from the agents they check. Different training, different habits, different failure modes. When two unrelated models agree that an answer is grounded and within policy, that means much more than one model agreeing with itself twice.",[15,33,34],{},"A judge also sees the answer differently. The agent was trying to be helpful. The judge is only trying to find what is wrong. Giving it a narrow brief, and nothing else to do, is what makes it useful.",[22,36,38],{"id":37},"block-or-grade-later","Block or grade later",[15,40,41],{},"There are two ways to put a judge in the path, and choosing between them is the main design decision.",[43,44,45,60],"table",{},[46,47,48],"thead",{},[49,50,51,54,57],"tr",{},[52,53],"th",{},[52,55,56],{},"BLOCK AND REPAIR",[52,58,59],{},"SHIP, THEN GRADE",[61,62,63,78,91,104],"tbody",{},[49,64,65,72,75],{},[66,67,68],"td",{},[69,70,71],"strong",{},"When the judge runs",[66,73,74],{},"Before the answer leaves",[66,76,77],{},"After it has gone out",[49,79,80,85,88],{},[66,81,82],{},[69,83,84],{},"If it fails",[66,86,87],{},"Sent back once with the reasons, then shipped with reservations",[66,89,90],{},"Flagged, counted, fed into the next lessons",[49,92,93,98,101],{},[66,94,95],{},[69,96,97],{},"Cost to the user",[66,99,100],{},"Some extra seconds",[66,102,103],{},"None",[49,105,106,111,114],{},[66,107,108],{},[69,109,110],{},"Use it for",[66,112,113],{},"Anything a customer sees, anything with money",[66,115,116],{},"High volume, low risk, easy to correct",[15,118,119],{},"In the blocking path, a failed answer is not simply rejected. It goes back to the agent once, with the judge’s reasons, and the agent gets a chance to repair it. If the repaired answer still fails, it goes out marked with the judge’s reservations, or, where the rules require it, to a person. Nothing leaves without a verdict.",[15,121,122],{},"In the grading path, the answer goes out and the judge scores it afterwards. The scores show where an agent drifts, and they feed the lessons the system learns overnight. Those lessons are not applied on their own: a person approves each one before agents use it.",[22,124,126],{"id":125},"what-a-judge-checks","What a judge checks",[15,128,129],{},"A judge with a vague brief (“is this a good answer?”) is expensive noise. Ours check specific things, and each check can fail on its own:",[131,132,134],"prose-checklist",{"title":133},"What a judge checks, every time",[135,136,137,141,144,147,150],"ul",{},[138,139,140],"li",{},"Can every number in the answer be traced to data the agent actually read in this run?",[138,142,143],{},"Does it contradict a policy in the shared memory?",[138,145,146],{},"Does it answer the question that was asked, completely?",[138,148,149],{},"Does it propose an action the approval rules do not allow?",[138,151,152],{},"Is the tone right for who will read it?",[15,154,155],{},"The first check is the one that matters most. A refund amount, a delivery date or a stock figure that does not appear in any tool result is treated as invented, however plausible it looks.",[22,157,159],{"id":158},"what-it-costs-and-when-to-skip-it","What it costs, and when to skip it",[15,161,162],{},"A judge is another model call on every answer. It adds tokens, and in the blocking path it adds seconds. For a customer reply that is cheap insurance. For some work, it is waste.",[15,164,165],{},"We skip the judge, or move it to grading later, when the output is low stakes, reversible and cheap to check. An internal tag suggestion that a person sees anyway, or a draft that someone always edits before sending, does not need a second model standing in front of it.",[15,167,168],{},"We also never ask a model to check what code can check. Whether a price is above its floor, whether a date is in the future or whether an order exists are deterministic questions. They get deterministic answers, which are faster and do not have opinions.",[170,171,172],"blockquote",{},[15,173,174],{},"A judge is for judgement. If a rule can be written as code, write it as code.",[22,176,178],{"id":177},"fail-loudly-not-silently","Fail loudly, not silently",[15,180,181],{},"Judges fail too. They time out, or their provider is down for a few minutes. The worst thing a system can do then is pretend the check happened.",[15,183,184],{},"When a judge cannot run, the answer is shown with a visible “not validated” mark, and the person reading it decides whether to rely on it. A silent pass is how a system loses the trust of the people who work with it, and that trust is much harder to rebuild than a timeout is to fix.",{"title":186,"searchDepth":187,"depth":187,"links":188},"",2,[189,190,191,192,193],{"id":24,"depth":187,"text":25},{"id":37,"depth":187,"text":38},{"id":125,"depth":187,"text":126},{"id":158,"depth":187,"text":159},{"id":177,"depth":187,"text":178},"engineering","2026-09-01",false,"md","Every agent needs a ==judge.==","blue","J",{},true,"\u002Finsights\u002Fevery-agent-needs-a-judge",4,[206,207,208],"what-agents-should-never-do-alone","what-an-agentic-os-is-and-what-it-isnt","testing-a-campaign-on-customers-who-dont-exist",{"title":5,"description":17},"insights\u002Fevery-agent-needs-a-judge","Why we put a second model in front of every answer, and when it isn’t worth the cost.",[213,214,215,216,217],{"id":24,"label":25},{"id":37,"label":38},{"id":125,"label":126},{"id":158,"label":159},{"id":177,"label":178},"XzL5diXOtcDslArv3P74XXRkQd_4qZoVSP7GUPDaC8E",[220,463,705],{"id":221,"title":222,"author":223,"blobHue":10,"body":224,"category":443,"date":444,"description":228,"draft":196,"extension":197,"featured":196,"headline":445,"hue":446,"letter":447,"meta":448,"navigation":202,"path":449,"readMinutes":204,"related":450,"seo":453,"stem":454,"summary":455,"toc":456,"__hash__":462},"insights_en\u002Finsights\u002Fwhat-agents-should-never-do-alone.md","What agents should never do alone",{"name":7,"role":8,"bio":9},{"type":12,"value":225,"toc":436},[226,229,232,236,242,248,254,257,261,264,267,270,274,277,297,300,304,307,415,418,423,427,430,433],[15,227,228],{},"The question we hear most from operations leads is not “can the agent do this?”. It is “what stops it doing something stupid?”. The honest answer is not a better prompt. It is a short list of rules, written by the people who own the risk, that the agent cannot talk its way around.",[15,230,231],{},"Writing those rules is less work than it sounds. Almost everything that should stay with a person falls into three kinds of decision.",[22,233,235],{"id":234},"three-kinds-of-decisions","Three kinds of decisions",[15,237,238,241],{},[69,239,240],{},"Money."," Refunds, credits, discounts, prices, payments. Anything that moves money in or out of the business, or changes what a customer pays.",[15,243,244,247],{},[69,245,246],{},"Promises."," A delivery date, a replacement, an exception to the policy, anything that commits the company to a customer or a supplier. A wrong answer is fixable. A wrong promise has to be honoured or broken.",[15,249,250,253],{},[69,251,252],{},"Anything you can’t undo."," Deleting records, sending to your whole customer base, cancelling or changing an order that is already moving. If the mistake cannot be reversed by clicking something, a person decides.",[15,255,256],{},"Everything else, like reading, classifying, drafting, looking up, summarising and routing, is usually safe for an agent to do alone, provided it is visible afterwards.",[22,258,260],{"id":259},"draft-then-apply","Draft, then apply",[15,262,263],{},"The most useful distinction in approval rules is between preparing an action and executing it. An agent can do all the work of a refund: find the order, check the policy, calculate the amount, write the reply. Then it stops, and a person applies it with one tap.",[15,265,266],{},"This keeps most of the time saving and almost none of the risk. The person is not doing the work. They are checking a finished proposal, with the order, the policy and the amount on one screen.",[15,268,269],{},"Over time, some drafts earn the right to apply themselves. When a person has approved the same kind of action enough times without changes, you can move it below the threshold. That is a decision for the team that owns it, not for the agent.",[22,271,273],{"id":272},"thresholds-not-feelings","Thresholds, not feelings",[15,275,276],{},"“Ask me when it’s important” is not a rule. An agent cannot know what feels important to you. A rule needs a number, a category or a list:",[135,278,279,285,291],{},[138,280,281,284],{},[69,282,283],{},"A number."," Refunds up to a limit are applied; above it, they go to the ops lead.",[138,286,287,290],{},[69,288,289],{},"A category."," Any change to a contract goes to legal, whatever the value.",[138,292,293,296],{},[69,294,295],{},"A list."," New suppliers, key accounts and anything to the press always go to a person.",[15,298,299],{},"Every rule names who decides and where they are asked: in Slack, Teams or email, wherever that person already works. A rule that sends approvals to a dashboard nobody opens is a rule that stops the business.",[22,301,303],{"id":302},"a-worked-example","A worked example",[15,305,306],{},"This is the shape of a rule set for an online store’s support and commerce agents. The limits are yours to set; the structure is what matters.",[43,308,309,322],{},[46,310,311],{},[49,312,313,316,319],{},[52,314,315],{},"ACTION",[52,317,318],{},"AGENT ALONE",[52,320,321],{},"GOES TO A PERSON",[61,323,324,337,350,363,376,389,402],{},[49,325,326,331,334],{},[66,327,328],{},[69,329,330],{},"Order status, tracking, policy questions",[66,332,333],{},"Answers",[66,335,336],{},"Never, unless the customer asks for one",[49,338,339,344,347],{},[66,340,341],{},[69,342,343],{},"Refund",[66,345,346],{},"Drafts every one, applies small ones",[66,348,349],{},"Above €500 in this example, the ops lead",[49,351,352,357,360],{},[66,353,354],{},[69,355,356],{},"Voucher or discount",[66,358,359],{},"Proposes, inside the margin floor",[66,361,362],{},"Anything outside the agreed limits",[49,364,365,370,373],{},[66,366,367],{},[69,368,369],{},"Price change",[66,371,372],{},"Never writes a price",[66,374,375],{},"The pricing owner, after the margin check",[49,377,378,383,386],{},[66,379,380],{},[69,381,382],{},"Delivery date",[66,384,385],{},"Quotes what the courier data says",[66,387,388],{},"Any exception or guarantee",[49,390,391,396,399],{},[66,392,393],{},[69,394,395],{},"Order change or cancellation",[66,397,398],{},"Drafts",[66,400,401],{},"Always applied by a person",[49,403,404,409,412],{},[66,405,406],{},[69,407,408],{},"Campaign to the whole base",[66,410,411],{},"Prepares and simulates",[66,413,414],{},"Always sent by a person",[15,416,417],{},"Start with the right-hand column. The right-hand column is the list of things your team has decided to keep. Everything to its left is work they no longer have to do.",[170,419,420],{},[15,421,422],{},"If you can’t undo it, a person does it.",[22,424,426],{"id":425},"the-veto-that-isnt-a-model","The veto that isn’t a model",[15,428,429],{},"Some rules are too important to leave to a language model, even one that is being checked. Margin is the clearest case.",[15,431,432],{},"In the marketplace system we built, no agent ever writes a price. Agents can propose a discount or a clearance offer, but every proposal passes through a margin guardrail first. The guardrail is plain code, not a model. It calculates the floor for that product after returns, fees and shipping, and anything below it is vetoed. There is nothing to persuade and no prompt to get wrong.",[15,434,435],{},"That is the pattern we use wherever a rule can be expressed as arithmetic or a lookup. The model proposes, deterministic code checks, and a person approves what the rules say a person approves. Each layer does the thing it is good at, and none of them is asked to be the last line of defence alone.",{"title":186,"searchDepth":187,"depth":187,"links":437},[438,439,440,441,442],{"id":234,"depth":187,"text":235},{"id":259,"depth":187,"text":260},{"id":272,"depth":187,"text":273},{"id":302,"depth":187,"text":303},{"id":425,"depth":187,"text":426},"playbooks","2026-09-08","What agents should never do ==alone.==","sun","!",{},"\u002Finsights\u002Fwhat-agents-should-never-do-alone",[451,452,207],"every-agent-needs-a-judge","the-30-day-playbook-week-by-week",{"title":222,"description":228},"insights\u002Fwhat-agents-should-never-do-alone","A practical way to write approval rules: money, promises and anything you can’t undo.",[457,458,459,460,461],{"id":234,"label":235},{"id":259,"label":260},{"id":272,"label":273},{"id":302,"label":303},{"id":425,"label":426},"mWnCbu3ZKOI9CJrpjxbakDDnQwkJuenNM8EI7HSjdMA",{"id":464,"title":465,"author":466,"blobHue":10,"body":467,"category":686,"date":687,"description":471,"draft":196,"extension":197,"featured":196,"headline":688,"hue":689,"letter":690,"meta":691,"navigation":202,"path":692,"readMinutes":204,"related":693,"seo":695,"stem":696,"summary":697,"toc":698,"__hash__":704},"insights_en\u002Finsights\u002Fwhat-an-agentic-os-is-and-what-it-isnt.md","What an Agentic OS is, and what it isn’t",{"name":7,"role":8,"bio":9},{"type":12,"value":468,"toc":679},[469,472,475,479,482,485,489,495,528,534,540,546,612,617,621,627,633,639,643,646,649,653,676],[15,470,471],{},"Most people meet AI agents as a chat window. You ask, it answers, and then nothing happens. That is useful, but it isn’t how a business runs. A business runs on work that moves between systems, people and decisions, every day, whether anyone is watching or not.",[15,473,474],{},"An Agentic OS is what it takes to hand some of that work to agents and still sleep at night.",[22,476,478],{"id":477},"a-plain-definition","A plain definition",[15,480,481],{},"An Agentic OS is a team of AI agents trained on how your business works, running inside the tools you already use, following rules your people set. Each agent owns one job. They share what they know. They stop and ask when a decision is above their limits. And everything they do is visible on one screen.",[15,483,484],{},"The word “OS” is deliberate. An operating system is not an app you open. It is what sits underneath and keeps everything else running. The agents are the visible part; the layers around them are what make it safe.",[22,486,488],{"id":487},"the-four-layers","The four layers",[15,490,491,494],{},[69,492,493],{},"Agents"," do the work. We use five kinds, and most companies go live with two or three:",[496,497,498,504,510,516,522],"ol",{},[138,499,500,503],{},[69,501,502],{},"Responder"," answers customers, suppliers and colleagues, in your tone, from your data.",[138,505,506,509],{},[69,507,508],{},"Classifier"," reads what comes in, from emails to tickets to documents, and sends it to the right place.",[138,511,512,515],{},[69,513,514],{},"Scraper"," watches the sources you care about and brings back what changed.",[138,517,518,521],{},[69,519,520],{},"Orchestrator"," runs work that spans several systems: the refund, the CRM update, the courier booking.",[138,523,524,527],{},[69,525,526],{},"Analyst"," reads the numbers and has the report ready before the meeting.",[15,529,530,533],{},[69,531,532],{},"Shared memory"," is what the agents know about your business: policies, price lists, customer history, past decisions. Every agent reads from the same source, and it stays current as you work. No more “ask Maria, she knows”.",[15,535,536,539],{},[69,537,538],{},"Approval rules"," decide what an agent may do alone. They are written in plain language and set by your team. Above the limit, the agent pauses and a person decides, in the tools they already use.",[15,541,542,545],{},[69,543,544],{},"The command center"," shows every run, cost and result on one screen. You can replay any decision step by step, pause any agent, and follow the number you agreed on, every day.",[43,547,548,561],{},[46,549,550],{},[49,551,552,555,558],{},[52,553,554],{},"LAYER",[52,556,557],{},"WHAT IT ANSWERS",[52,559,560],{},"WITHOUT IT",[61,562,563,575,587,599],{},[49,564,565,569,572],{},[66,566,567],{},[69,568,493],{},[66,570,571],{},"Who does the work?",[66,573,574],{},"Nothing gets done",[49,576,577,581,584],{},[66,578,579],{},[69,580,532],{},[66,582,583],{},"What do they know?",[66,585,586],{},"Every agent guesses",[49,588,589,593,596],{},[66,590,591],{},[69,592,538],{},[66,594,595],{},"What can they do alone?",[66,597,598],{},"Nobody dares switch them on",[49,600,601,606,609],{},[66,602,603],{},[69,604,605],{},"Command center",[66,607,608],{},"What did they do, and did it work?",[66,610,611],{},"Nobody can prove it",[170,613,614],{},[15,615,616],{},"Agents alone are a demo. What makes them safe is everything around them.",[22,618,620],{"id":619},"what-it-isnt","What it isn’t",[15,622,623,626],{},[69,624,625],{},"It isn’t a chatbot."," A chatbot waits for a question. An Agentic OS works through a queue. It reads the inbox overnight, reconciles the stock file, drafts the replies, and leaves the three decisions that need a person at the top of the list in the morning.",[15,628,629,632],{},[69,630,631],{},"It isn’t a platform licence."," You don’t rent seats in someone else’s product and bend your process to fit it. The agents are built around your process, inside your systems, and you own the code, the prompts and the data.",[15,634,635,638],{},[69,636,637],{},"It isn’t a pilot."," A pilot runs on an export, for a demo, with nobody accountable for the result. An Agentic OS runs on live systems from the first week, against a number that the team whose work it takes has signed off. If it isn’t in production, it isn’t an OS yet.",[22,640,642],{"id":641},"where-to-start","Where to start",[15,644,645],{},"Nobody builds all four layers for the whole company at once. You start with one process that hurts, usually one with volume, clear rules and a number: the support inbox, the supplier files, the weekly report. You build the first squad of agents with its memory, its rules and its screen. Then you add a squad at a time.",[15,647,648],{},"The layers are what make the second squad cheaper than the first. The memory is already there. The rules have a format the team knows. The command center already shows the first squad’s numbers, so the next one is judged on the same screen, against the same kind of target.",[22,650,652],{"id":651},"how-to-tell-if-you-have-one","How to tell if you have one",[131,654,656],{"title":655},"You have an Agentic OS if the answer is yes to all of these",[135,657,658,661,664,667,670,673],{},[138,659,660],{},"Do the agents work inside the systems your team already uses?",[138,662,663],{},"Can you say, in one sentence, which decisions they may not take alone?",[138,665,666],{},"Do they all read from the same, current source of policies and history?",[138,668,669],{},"Can you open one screen and see what they did today, what it cost and what is waiting for you?",[138,671,672],{},"Has a number moved, and does the team that owns it agree?",[138,674,675],{},"Do you own the code, the prompts and the data?",[15,677,678],{},"If any answer is no, you have agents. That is a good start. The rest is the part that lets you rely on them.",{"title":186,"searchDepth":187,"depth":187,"links":680},[681,682,683,684,685],{"id":477,"depth":187,"text":478},{"id":487,"depth":187,"text":488},{"id":619,"depth":187,"text":620},{"id":641,"depth":187,"text":642},{"id":651,"depth":187,"text":652},"strategy","2026-09-15","What an Agentic OS is, and what it ==isn’t.==","violet","OS",{},"\u002Finsights\u002Fwhat-an-agentic-os-is-and-what-it-isnt",[694,451,206],"why-95-percent-of-ai-pilots-never-reach-production",{"title":465,"description":471},"insights\u002Fwhat-an-agentic-os-is-and-what-it-isnt","Not a chatbot, not a platform licence. A plain-language definition, with the four layers that make agents safe to run a business.",[699,700,701,702,703],{"id":477,"label":478},{"id":487,"label":488},{"id":619,"label":620},{"id":641,"label":642},{"id":651,"label":652},"O4B58r8Hq-cONZEYpn0ps8PFaK7Sr4eN71hJvwSQj0c",{"id":706,"title":707,"author":708,"blobHue":10,"body":709,"category":851,"date":852,"description":713,"draft":196,"extension":197,"featured":196,"headline":853,"hue":854,"letter":855,"meta":856,"navigation":202,"path":857,"readMinutes":204,"related":858,"seo":860,"stem":861,"summary":862,"toc":863,"__hash__":869},"insights_en\u002Finsights\u002Ftesting-a-campaign-on-customers-who-dont-exist.md","Testing a campaign on customers who don’t exist",{"name":7,"role":8,"bio":9},{"type":12,"value":710,"toc":844},[711,714,717,721,724,727,731,734,754,757,761,764,767,770,775,779,782,828,831,834,838,841],[15,712,713],{},"Our founder also runs a fashion marketplace. We built its Agentic OS the way we build one for any client, inside its own CRM: 90 agents in eight departments, each team checked by a judge. There, a campaign to the whole base is the kind of action we keep with a person. Once it is out, it is out. A tone that lands badly or an offer that confuses reaches everyone at once, and the unsubscribes do not come back.",[15,715,716],{},"So before a send, we test it on customers who don’t exist. These are notes on how the synthetic customers are built, what they are good for, and where we have learned not to trust them.",[22,718,720],{"id":719},"why-simulate-a-send","Why simulate a send",[15,722,723],{},"A\u002FB tests are the honest way to compare messages, but they test on real people. Half your audience gets the weaker version, and you learn after the fact. For a weekly campaign in four languages, across email, SMS and push, there are more variants than there is audience to test them on.",[15,725,726],{},"A simulation is a cheap first filter. It does not replace the real result. It helps decide which variants deserve to reach real people at all, and it catches the obvious mistakes before anyone sees them.",[22,728,730],{"id":729},"how-a-synthetic-customer-is-built","How a synthetic customer is built",[15,732,733],{},"We do not invent personas from a marketing brief. Each one is built from real buyers.",[496,735,736,742,748],{},[138,737,738,741],{},[69,739,740],{},"Split the base into strata."," Groups of buyers that behave alike: how often they buy, what they buy, how they respond to discounts, which channels they use, which language they read.",[138,743,744,747],{},[69,745,746],{},"Describe each stratum from its data."," Order history, categories, return behaviour, past campaign responses. The description is written from what these buyers did, not from what we imagine they want.",[138,749,750,753],{},[69,751,752],{},"Give each persona a voice."," A persona model reads the description and answers as that kind of buyer would, when shown a subject line, a message and an offer.",[15,755,756],{},"Every stratum gets its own persona, so the simulation reflects the mix of your actual audience, not an average customer who does not exist either.",[22,758,760],{"id":759},"two-models-one-prediction","Two models, one prediction",[15,762,763],{},"Each persona is played by two different persona models, working as an ensemble. For every variant of a campaign, both predict whether that buyer would open, click, convert or unsubscribe, and each gives the objection it would have: “the discount isn’t worth the shipping”, “I bought this last week”, “this doesn’t sound like you”.",[15,765,766],{},"Using two models matters for the same reason judges run on a different model family from the agents they check. When the two agree, the signal is stronger. When they disagree, the disagreement is itself useful: it usually points at a message that could be read two ways.",[15,768,769],{},"The predictions are calibrated against real results, stratum by stratum: what the personas predicted is compared with what actual buyers did, and the simulation is adjusted. A simulation that is never checked against reality drifts into fiction.",[170,771,772],{},[15,773,774],{},"A synthetic customer is a hypothesis about real ones. It has to be tested against them.",[22,776,778],{"id":777},"what-they-get-right-and-wrong","What they get right, and wrong",[15,780,781],{},"After enough sends, the pattern is clear.",[43,783,784,794],{},[46,785,786],{},[49,787,788,791],{},[52,789,790],{},"GOOD AT",[52,792,793],{},"BAD AT",[61,795,796,804,812,820],{},[49,797,798,801],{},[66,799,800],{},"Ranking variants against each other",[66,802,803],{},"Predicting absolute open or click rates",[49,805,806,809],{},[66,807,808],{},"Catching an obvious tone miss",[66,810,811],{},"Anything genuinely new to the audience",[49,813,814,817],{},[66,815,816],{},"Spotting a confusing offer or subject line",[66,818,819],{},"Price sensitivity in the moment",[49,821,822,825],{},[66,823,824],{},"Surfacing the objection nobody wrote down",[66,826,827],{},"Events outside the data, like the weather or the news",[15,829,830],{},"Ranking is what they are built for: which variant is likely to do better, not by how much.",[15,832,833],{},"The absolute rates are the weak point. Models are not good at saying exactly how many people will open something, and we do not use them that way. Novelty is another: a type of campaign the audience has never seen has no history for the personas to draw on. And price sensitivity is hard. What a buyer says about a discount and what they do on a Friday night are not the same.",[22,835,837],{"id":836},"the-rule-that-blocks-a-launch","The rule that blocks a launch",[15,839,840],{},"The simulation is part of the launch. A newsletter or SMS launch without a recent simulation behind it is flagged, and it can be blocked until a new one has run. If the content has changed since the last run, the simulation is out of date.",[15,842,843],{},"The personas do not decide whether a campaign goes out. A person does, with the predictions, the objections and the disagreements on one screen. The synthetic customers only make sure that nobody sends a campaign to real ones without asking the question first.",{"title":186,"searchDepth":187,"depth":187,"links":845},[846,847,848,849,850],{"id":719,"depth":187,"text":720},{"id":729,"depth":187,"text":730},{"id":759,"depth":187,"text":760},{"id":777,"depth":187,"text":778},{"id":836,"depth":187,"text":837},"case-notes","2026-08-25","Testing a campaign on customers who don’t ==exist.==","aqua","S",{},"\u002Finsights\u002Ftesting-a-campaign-on-customers-who-dont-exist",[859,451,206],"cart-recovery-with-agents-notes-from-our-own-store",{"title":707,"description":713},"insights\u002Ftesting-a-campaign-on-customers-who-dont-exist","Synthetic personas built from real buyers: what they predict well, and what they get wrong.",[864,865,866,867,868],{"id":719,"label":720},{"id":729,"label":730},{"id":759,"label":760},{"id":777,"label":778},{"id":836,"label":837},"FOFAwqeMsuY8POjF0OqFXdwG1XrLGeDBiMZwOLpdldQ",1790618465016]