Cirka 6 % av experimenten hos Microsoft visar en obalans i provkvoten, vilket för en produkt som kör 10 000 experiment per år motsvarar ungefär en detektion per dag (Fabijan m.fl., KDD 2019). Team som kör betydligt färre tester ser sällan den siffran, eftersom den kontroll deras plattform kör inte kan nå någon signifikans med deras trafikvolym. Testet ser rent ut, rapporterar en ökning på 4 % och är ändå fel.
Den här guiden är för den person som läser av experimentets avläsning och måste bestämma om den ska skickas. I slutet kommer du att kunna avgöra om ditt test är tillräckligt stort för att kontrollen av felmatchningen ska betyda något, köra fem diagnosgrenar i den ordning som hittar orsaken snabbast, och separera en obalans som ogiltigförklarar avläsningen från en som du kan segmentera runt och behålla.
Vad ett SRM-larm faktiskt berättar för dig
En avvikelse i stickprovskvoten är ett gap mellan den uppdelning du konfigurerade och den uppdelning du observerar: du satte 50/50 och fick 50.8/49.2. Standardkontrollen är Pearsons chi-kvadrat-goodness-of-fit-test på exponeringsantalet, en frihetsgrad för ett tvåarmstest.
Det spelar roll eftersom mekanismen som leder till att användare förloras nästan aldrig är neutral i förhållande till ditt mätvärde. Om en omdirigering tar bort långsamma anslutningar från varianten, är det de som överlever de som har bättre anslutningar, och de konverterar bättre. Ökningen är verklig i data och frånvarande i verkligheten.
Här är det första de flesta team gör fel: det finns ingen branschgräns. Plattformarna är mer än en storleksordning oense.
| plattform | Testa | Flaggor vid | Anmärkningar |
|---|---|---|---|
| AB Tasty | Sekventiell frekventist (S-SRM) | p <0.01 | Byggd för kontinuerlig övervakning, så upprepade visningar tas med i beräkningen |
| Statsig | Chi-kvadrat | p <0.01 | "Vi anser att exponeringar är obalanserade om SRM p-värdet är under 0.01" |
| Tillväxtbok | Chi-kvadrat | p <0.001 | Varningen är undertryckt ovanför det |
| Microsoft (bearbetad illustration) | Chi-kvadrat | ~1 på 139 838 160 | En 50.2/49.8-delning vid stort n eliminerar redan detta |
Två konsekvenser. Ett test som flaggas på en plattform klarar ett annat med identiska data, så "vårt verktyg varnade oss inte" är inte bevis på en ren delning. Och en tröskel på 0.01 flaggar ett av hundra friska tester. Om du tittar på p-värdet dagligen över ett treveckorstest är den naiva oberoende tittgränsen för ett falskt alarm 19 %; den sanna siffran är lägre eftersom på varandra följande dagar är starkt korrelerade, men den är inte 1 %. Det är därför AB Tasty kör en sekventiell procedur. Om din plattform kör en chi-kvadrat med fast horisont, titta en gång, i slutet, på kumulativa antal.
Kontrollera om ditt test kan upptäcka en obalans alls
För en 50/50-delning förenklas chi-kvadratstatistiken till 4n(p̂−0.5)², där n är totala exponeringar. Invertera den så får du den minsta obalans som din kontroll kan flagga:
| Totala exponeringar | Minsta flaggade uppdelning vid p < 0.01 | vid p < 0.001 |
|---|---|---|
| 5,000 | 51.8 / 48.2 | 52.3 / 47.7 |
| 10,000 | 51.3 / 48.7 | 51.6 / 48.4 |
| 30,000 | 50.7 / 49.3 | 51.0 / 49.0 |
| 100,000 | 50.4 / 49.6 | 50.5 / 49.5 |
| 1,000,000 | 50.13 / 49.87 | 50.16 / 49.84 |
Läs det som en gräns, inte en licens. Vid 10 000 exponeringar är allt mindre än en obalans på 1.3 poäng osynligt för kontrollen, och en urvalseffekt på 1.3 poäng är mer än tillräckligt för att skapa en liten konverteringsökning. Det är det strukturella problemet i större delen av regionen. Turkiet registrerade cirka 6 miljarder e-handelstransaktioner över ungefär 634 000 företag år 2025 (Handelsministeriet, 12 maj 2026), ett genomsnitt på nära 9 500 per år vardera, och det genomsnittet dras upp kraftigt av en handfull marknadsplatser. En mellanstor butik som testar ett kassasteg arbetar med tiotusentals exponeringar, inte miljontals, så dess SRM-kontroll upptäcker grova brott och inget mer subtilt.
Vid den volymen, lita inte på larmet. Hämta råa exponeringsvärden per dag och per segment själv, och behandla en ihållande drift i samma riktning som misstänkt även när p-värdet är anmärkningsfritt. Om du är osäker på var din plattform exponerar dessa värden, Dokumentation för SRM Checker kartlägger dem per verktyg.
De fem grenarna, i den ordning som hittar orsaken snabbast
KDD-taxonomin sorterar SRM-orsaker efter livscykelstadium: tilldelning, exekvering, loggbehandling, analys, störning. Diagnostisera dem i olika ordning, med de billigaste och vanligaste först.
- Analys och utlösning. Symtom: uppdelningen är ren i den rådata exponeringsloggen och trasig i poängkortet. Kontroll: beräkna om förhållandet utan ditt triggervillkor, datumfilter och kopplingar på mätvärdesnivå. Bekräftar det om förhållandet återgår till förväntat. Åtgärd: utvärdera triggningen identiskt i båda armarna, innan något variantspecifikt beteende kan ändra behörigheten. Vanligaste falsklarmet, tio minuter för att utesluta.
- Loggbehandling. Symtom: exponeringsantalet skiljer sig mellan två pipelines, eller så uppstår gapet efter ETL-steget. Kontrollera: jämför SDK-sidans antal, lagerantalet och rapporteringsantalet för samma fönster, jämför sedan botfilteruteslutningsfrekvenser per arm. Bekräftar om armarna är lika uppströms och olika nedströms. Åtgärd: filtrera deterministiskt och identiskt. Automatiserad trafik nådde 53 % av webbtrafiken år 2026, upp från 51 % år 2024 (Imperva Bad Bot-rapport, 29 april 2026), så ett heuristiskt filter som är inriktat på laddningstid eller användaragentbeteende kan exkludera med olika hastigheter per variant. Samtyckesdriven förlust finns också här: när
ad_storagenekas, slutar Googles taggplattform att ställa in annonscookies (Samtyckesdokument för Google Tag-plattformen), så om avslagsfrekvensen skiljer sig åt mellan geografiska områden i ett test, förlorar varje uppgift som lutar sig mot dessa identifierare användare ojämnt. - Avrättning. Symtom: obalansen växer med sidvikt, är värre på mobilen eller börjar vid en distribution. Kontrollera: dela upp förhållandet efter enhet, webbläsare, anslutningstyp och dag; jämför tid till exponering mellan armarna. Bekräftar det om underskottet koncentreras till långsamma segment eller i en webbläsare. Åtgärd: det är här omdirigeringstester dör. En omdirigering lägger till en fullständig navigering till endast en arm, och alla som överger under den är en selektiv förlust. Rendera båda varianterna server-side vid en URL, eller acceptera att armarna inte är jämförbara.
- Uppdrag. Symtom: förhållandet är fel från den första timmen och förblir felaktigt med en konstant faktor. Kontroll: kör en A/A på samma allokering och verifiera att hash-saltet inte återanvändes från ett tidigare experiment på denna population. Bekräftar det om A/A också visar obalansen. Åtgärd: tilldela om med ett nytt salt och starta om. Överföring från ett tidigare test är den tysta versionen av detta, och endast A/A exponerar det.
- Interferens. Symtom: obalansen är koncentrerad till ett litet antal identifierare med hög aktivitet, eller i interna IP-intervall. Kontrollera: fördelningen av exponeringsantal per användare och de översta 1% av identifierarna efter händelsevolym. Bekräftar det om borttagning av dem återställer förhållandet. Åtgärd: exkludera intern och skriptad trafik med en dokumenterad regel, inte manuellt, så att exkluderingen är identisk nästa gång.
En fungerande genomgång
Siffrorna nedan är illustrativa, inte klientdata. Ett utcheckningstest rapporterar 61 480 kontroll- och 58 520 variantexponeringar: 51.2/48.8 på 120 000 användare, chi-kvadrat p under 0.001. Gren 1: om triggervillkoret tas bort returnerar det 60 020 / 59 980, så tilldelningen är okej och förlusten sker efter exponeringen. Gren 2: pipeline-antalet överensstämmer, bot-undantag 0.9 % i båda armarna. Gren 3: dator ligger på 50.1/49.9, mobil på 52.4/47.6, och variantens mediantid till exponering är 900 ms högre på mobil. Diagnos: varianten skickar en extra renderingsblockerande begäran, mobilanvändare avbryter under den, överlevande har bättre anslutningar. Avläsningen är ogiltig. Åtgärden är en prestandafix, och testet körs om, tolkas inte om.
Vad du kan rädda och vad du inte kan
- Ogiltigförklara avläsningen när förlustmekanismen rimligen kan korrelera med måttet. Varje orsak till exekvering och tilldelning kvalificerar sig som standard.
- Bärgning per segment Det är bara när obalansen är begränsad till ett segment som du kan utesluta helt och hållet, det segmentet definierades innan du tittade på mätvärdet och resten klarar sin egen SRM-kontroll. Två av tre räcker inte.
- Behåll testet när orsaken enbart var under analys och det korrigerade poängkortet godkänns. Du läser om samma data med ett fast filter, inte fiskar.
- Logga det hur som helst. Registrera orsakskategorin i experimentet. Taxonomin lönar sig kumulativt: om tre av dina senaste tio tester misslyckades i gren 3, är ditt problem inte experimenterandet, det är front-end-leverans. [INTERNA DATA BEHÖVS: andel Switas-körda experiment under de senaste 24 månaderna som misslyckades med en SRM-kontroll, uppdelat efter taxonomigren, för att ersätta Microsofts 6%-riktmärke med en siffra från denna marknad]
Var detta bryts ner
Detta träd förutsätter ett tvåarmstest med en fast, känd allokering och randomisering på användarnivå. Det täcker inte flerarmstester, som behöver hela chi-kvadratvärdet över alla armar plus en uppföljning av vilket par som är fel, eller rampade allokeringar, där det förväntade förhållandet förändras under testet och en kumulativ chi-kvadratvärde är helt fel test. Det gäller inte kluster- eller georandomiserade designer, där enheten inte är användaren och den obalans som spelar roll ligger i klusteregenskaperna. Det säger ingenting om huruvida din definition av mätvärden är korrekt. Och det kan inte hjälpa när exponeringar inte loggas och du härleder tilldelning från en mätvärdeshändelse, vilket inte är en delad kontroll utan en gissning.
FAQ
Är en 51/49-delning alltid ett problem? Det beror helt på n. Vid 5 000 exponeringar är det vanligt brus; vid 500 000 är det en nästan säker defekt. Bedöm förhållandet mot detekterbarhetstabellen, inte mot en fast procentuell tumregel.
Kan jag bara vikta om armarna statistiskt istället för att springa om? Nej. Omviktning korrigerar antalet och lämnar urvalet intakt. Användarna du förlorade är borta, och de var inte ett slumpmässigt urval av armen.
Hur ofta ska jag titta på SRM p-värdet? En gång, i slutet, på kumulativa räkningar, såvida inte din plattform kör en sekventiell procedur. Daglig kikning på ett chi-kvadratvärde med fast horisont ökar falsklarm avsevärt.
Ogiltigförklarar SRM även skyddsräckesmätvärden? Ja, av samma anledning. Om armarna rymmer olika populationer är ett platt skyddsräcke inte mer tillförlitligt än ett rörligt primärt mätvärde.
Vad händer om ett A/A-test också visar en avvikelse? Då ligger felet i tilldelningen eller i loggningspipelinen, inte i din behandling. Åtgärda det innan du kör något annat, eftersom det kontaminerar alla tester på den plattformen.
Orsakar omdirigeringstester alltid SRM? Inte alltid, men de medför en strukturell risk som ingen annan design har, eftersom den extra navigeringen endast finns i en arm. Om du måste köra en, kontrollera förhållandet efter anslutningshastighet och enhet innan du läser av något mätvärde.
Min trafik är för låg för att kontrollen ska betyda något. Vad händer då? Övervaka råa dagliga exponeringsantal för ihållande avvikelser, kör en periodisk A/A på tilldelningslagret och förregistrera en längre lista med sanitetskontroller. Du ersätter statistisk styrka med process.
Bör botfiltrering ske före eller efter tilldelning? Efter exponeringsloggning, före analys, med hjälp av deterministiska regler som tillämpas identiskt på båda armarna. Heuristisk filtrering inuti SDK:t är hur själva filtret blir felmatchningen.
Kör kontrollen på ditt eget experimentprogram
Om du vill ha en andra granskning av den delade hälsan hos de tester du kör nu, eller en granskning av tilldelnings- och logglagret som de alla är beroende av, är det vad vår CRO och experimenttjänst gör.
Källor
- Fabijan, Gupchup, Gupta, Omhover, Vermeer, Dmitriev, "Diagnostisering av urvalskvotsmissmatchning i onlinekontrollerade experiment: En taxonomi och tumregler för utövare", KDD 2019
- AB Tasty-dokumentation, felaktig provkvot (sekventiell S-SRM, tröskelvärde 0.01)
- Statsig, "En snabbguide till avvikelser i urvalskvoter", 31 augusti 2023 (chi-kvadrat, tröskelvärde 0.01)
- GrowthBook-dokumentation, Experimentering (chi-kvadrat, varning under 0.001)
- Imperva, "Rapport om dåliga botar 2026: Botar i agentåldern", 29 april 2026
- Republiken Turkiets handelsministerium, e-handelssiffror för 2025, 12 maj 2026
- Google Tag-plattform, samtyckesläge och lagringsbeteende
- Dokumentation och vanliga frågor om SRM Checker, Lukas Vermeer







