Djupdykning · 13 min läsning

Var börjar man med sökkampanjer på en jättesajt? Ditt GA4 vet redan.

På en jättesajt är den första frågan om sökannonsering inte vilka sökord du ska köpa, utan vilka målsidor som har råd med betalda klick. GA4 har svaret.

Målsidor tecknade som dörrar: en hamnar på transportbandet för att annonseras, resten slängs.
De seriösa fakta är på riktigt — artikelomslagen är det inte.

Kort sagt: På en jättesajt är den första frågan om sökannonsering inte vilka sökord du ska köpa, utan vilka målsidor som matematiskt kan bära kostnaden för betalda klick. Mata in en GA4-export och en crawl av sajten, beräkna maxCPC = mål-CRR × CR × AOV för varje sida och jämför varje maxCPC med din verkliga genomsnittliga CPC. Ut kommer en rankad bygghög med TOP 100–200 sidor, en fix-hög med problemsidor och en skippa-hög, allt innan du spenderar ett öre.

Gratis nedladdning

Vill du bara ha det destillerade filtret?

Ladda ner de kompletta AI-instruktionerna — en fil du klistrar in i Claude eller någon annan kapabel kodagent, och den sorterar dina sidor i bygg-, fix- och skippa-högar. Lämna din e-post så är filen din — eller läs bara vidare.

En fil, en lista. Jag skriver bara när det finns något värt att läsa.

En kund kom en gång till mig med en sajt som hade ungefär tiotusen målsidor och en enda fråga. Var börjar vi med sökannonsering? Byråernas standardsvar har jag hört i tjugo år. Kör en bred kampanj över hela sajten och låt Google reda ut resten. Jag har också städat upp efter det svaret tillräckligt ofta för att veta vad det kostar. Det bränner budget på sidor som aldrig hade en chans att konvertera, trycker kontots ROAS under målet och förgiftar inlärningsfasen innan någon hunnit läsa en enda rapport.

Så innan ett öre lämnar kontot låter jag varje målsida bevisa att den har råd med ett betalt klick. Beviset vilar på två saker du redan har. En GA4-export av dina målsidor och en crawl av din sajt. Du får en rankad lista över de sidor som är värda att skicka söktrafik till, med exakt den maxCPC varje sida har råd med. Dessutom får du en tydlig ”buda inte på det här”-hög för sidorna vars ekonomi förbjuder betald sök. Inget sökordsverktyg, ingen magkänsla, inget ”vi slår bara på Dynamic Search Ads och ser”.

Det är hela artikeln. Nedan kör jag pipelinen från början till slut och visar dig det faktiska resultatet av varje steg. GA4-raderna, max-CPC-aritmetiken på en enda rad, crawlens extraktionstabell, prioriteringssorteringen före och efter, och diagnosen som räddar en problemsida som alla andra skulle radera. Siffrorna är illustrativa genomgående, så stoppa in dina egna. Utdatan ser exakt ut som verktygen returnerar den.

TOP 100–200
målsidor värda att bygga först
CRR × CR × AOV
den max-CPC varje sida har råd med
≈ 3 min
att sätta upp crawl-extraktionen
0,10 € CPC
sidorna du aldrig bör buda på

Pipelinen i en ruta

  • Vad vi är ute efter Rankade målsidor som är värda att skicka annonstrafik till
  • Indata GA4-målsidesexport · en sajt-crawl
  • Den enda formeln maxCPC = mål-CRR × CR × AOV
  • Vad du får En bygghög, en fix-hög och en skippa-hög

Den enda siffran som avgör allt

Varje målsida har ett tak: det högsta pris du kan betala för ett klick och ändå nå ditt effektivitetsmål. Beräkna det taket för varje sida så ger uträkningen hela prioriteringen:

maxCPC = mål-CRR × CR × AOV

där CRR (cost-revenue ratio, det europeiska PNO, motsvarande ACOS) är andelen av intäkten du är villig att spendera på annonser, CR är sidans konverteringsgrad, och AOV är dess genomsnittliga ordervärde.

Ett genomräknat exempel, rakt ur formeln. En kategorisida konverterar på 2 %, snittar en order på 1 000 €, och du är villig att spendera 10 % av intäkten på annonser (en 10× ROAS):

maxCPC = 0,10 × 0,02 × 1 000 € = 2,00 €.

Om du föredrar att tänka i ROAS kan du skriva om samma formel som maxCPC = CR × AOV / ROAS = 0,02 × 1 000 / 10 = 2,00 €. Samma siffra, välj formen din hjärna gillar. (Illustrativt exempel.)

2,00 € är beskedet. Jämför det med den verkliga genomsnittliga CPC:n i ditt konto för den marknaden och sidan sorterar sig själv. Ligger den med god marginal över genomsnittet bygger du sidan. Ligger den under kan sidan inte bära sig. Ligger den långt under är sidan inte värd att överväga. Allt som följer handlar bara om att räkna fram den här siffran för varje sida på ett tillförlitligt sätt och läsa resultatet.

Pipelinen i korthet

Fem steg. För vart och ett ser du vad du gör, vad du tittar på och varför. Varje steg finns för att svara på en specifik fråga om en sida.

1 · Hämta målsidornas ekonomi från GA4

Vad du gör: exportera sessioner, konverteringar, transaktioner och intäkt per målsida; härled CR och AOV. Varför: de två siffrorna mäter efterfrågan och pengar på ett och samma ställe, och utan dem är max-CPC en gissning. Vad du får: en rad per sida med de två siffror som formeln använder, CR och AOV.

2 · Crawla sajten för struktur

Vad du gör: crawla varje sida och hämta titel, H1 och brödsmuledjup, och framför allt kolumnen som gör jobbet: hur många produkter sidan listar. Varför: GA4 känner till sidans ekonomi men inte dess struktur. En sida med två produkter i lager kan inte bära en kampanj hur den än konverterar. Vad du får: den strukturella motsvarigheten till dina GA4-rader, plus en flagga för tunna sidor.

3 · Joina de två, beräkna max-CPC

Vad du gör: joina GA4 och crawlen på URL, kör formeln på varje rad och sortera bort tunna sidor. Varför: det är här ekonomi och struktur möts, så beskedet går att räkna fram. Vad du får: varje sida tillsammans med sin maxCPC.

4 · Prioritera: max-CPC vs. verklig genomsnittlig CPC

Vad du gör: sätt varje sidas max-CPC bredvid den faktiska genomsnittliga CPC:n i ditt konto eller land, sortera efter spelrum. Varför: en max-CPC betyder inget i sig själv. Bara gapet till vad klick faktiskt kostar avgör om en sida kan bära sig. Vad du får: TOP 100–200-bygghögen, en fix-hög och en skippa-hög.

5 · Diagnostisera problemsidorna

Vad du gör: för sidor som borde konvertera men inte gör det, kontrollera hur konkurrenskraftiga priserna är på de produkter som visas först. Varför: en låg CR på en sida som borde sälja beror oftast på ett merchandisingproblem, och det går att åtgärda. Vad du får: sidor som räddats från skippa-högen och flyttats tillbaka till bygghögen när de väl kan konvertera.

Nu samma fem steg, ett i taget, vart och ett med sin utdata.

Gratis nedladdning

Hämta de kompletta AI-instruktionerna för det här filtret

Hela filtret, omskrivet som en brief du klistrar in direkt i Claude eller någon annan kapabel kodagent. Du levererar GA4-exporten och crawlen; den räknar ut max-CPC för varje sida och ger dig högarna bygg, fixa och skippa tillbaka. Lämna din e-post så är filen din.

En fil, en lista. Jag skriver bara när det finns något värt att läsa.

Steg 1 · GA4-exporten, precis som den ser ut

Du behöver ingen flashig rapport. Öppna Explore → blank → Free form i GA4, dimension Landing page + query string, mått Sessions, Key events / Conversions, Total revenue. Lägg till Transactions om du har det; annars beräknar du AOV som intäkt ÷ konverteringar. Ett filter i förväg. Exkludera produktdetaljsidor och behåll kategori- och kollektionssidor. Du tar reda på vilka sidor som är värda att skicka trafik till, och på de flesta sajter är det kategorisidor, inte enskilda produktsidor. Att blanda in produktsidor i exporten snedvrider alla AOV- och CR-värden du beräknar.

Så här ser fyra representativa rader ut när de väl är exporterade, med CR och AOV härledda:

Målsida            Sessioner  Konv.  CR     Intäkt     AOV
/cordless-vacuums       8 140    163  2,0 %  68 460 €  420 €
/winter-tyres           5 020    156  3,1 %  28 080 €  180 €
/sleeping-bags         12 300    135  1,1 %  12 825 €   95 €
/phone-cases            9 800    137  1,4 %   2 192 €   16 €

(Illustrativt exempel.) CR är konverteringar ÷ sessioner; AOV är intäkt ÷ konverteringar. Det är hela indatan formeln behöver från GA4. Två kolumner per sida, CR och AOV. Notera redan nu att /sleeping-bags drar flest sessioner i urvalet men konverterar sämst. Kom ihåg den sidan; den blir det intressanta fallet senare.

Steg 2 · Crawlen, och kolumnen som gör jobbet

GA4 berättade hur varje sida presterar. Det kan inte berätta att en sida är strukturellt ihålig. En ”kategori” med två produkter i lager, eller en parametrisk filtervy som aldrig borde bära en kampanj. Därför crawlar du sajten. Två vägar. Låt en AI skriva en slit-och-släng-crawler åt dig på fem minuter, eller använd Screaming Frog med en anpassad XPath-extraktion du sätter upp på ungefär tre minuter (full miniguide i nedladdningen i slutet av artikeln). Kör den i List mode på din GA4-URL-uppsättning och den tuggar på i bakgrunden medan du gör något annat.

Den enda kolumnen som gör jobbet är produktantalet: hur många produktkort sidan faktiskt renderar. Här är extraktionsresultatet sammanfogat med samma fyra sidor, plus ytterligare en sida som crawlen flaggar:

URL                Titel               H1                Produkter  Brödsmulor
/cordless-vacuums  Cordless Vacuums …  Cordless Vacuums         48  Home>Floorcare>Vacuums
/winter-tyres      Winter Tyres | …    Winter Tyres             112  Home>Tyres>Winter
/sleeping-bags     Sovsäckar …         Sovsäckar                  9  Home>Camping>Sleep
/phone-cases       Phone Cases …       Phone Cases              640  Home>Accessories>Cases
/clearance-2019    Clearance           Clearance                  0  Home>Clearance

(Illustrativt exempel.) Regeln om tunna sidor gör sitt jobb direkt. /clearance-2019 listar noll produkter: en tom kategori som ändå samlar sessioner i GA4. Sortera bort alla sidor med färre än ungefär tre produkter innan du prioriterar, så når spöksidan aldrig bygghögen. I praktiken kräver regeln om tunna sidor ett enda beslut utifrån en enda signal. Crawlen visar en ”kategori” som inte har något att sälja, och du exkluderar den före prioriteringen. Du slösar varken kampanjbudget eller en analytikers eftermiddag på en sida som inte har något att erbjuda.

Steg 3 · Joina de två, och formeln på en enda rad

Nu blir de två dataseten ett. Joina GA4 och crawlen på URL så innehåller varje rad både sidans ekonomi (CR, AOV) och dess struktur (produktantal). Applicera maxCPC = mål-CRR × CR × AOV på varje rad i den sammanfogade tabellen. Se hur det ser ut på en enda rad, /cordless-vacuums vid ett CRR-mål på 10 %:

maxCPC = 0,10 × 0,020 × 420 € = 0,84 €.

En rad, ett tak. Gör det för alla fyra återstående sidor så får du fram varje sidas maxCPC. Hela beslutet bygger på de värdena:

Sida               CR     AOV    CRR   maxCPC = CRR×CR×AOV
/cordless-vacuums  2,0 %  420 €  10 %  0,10 × 0,020 × 420 = 0,84 €
/winter-tyres      3,1 %  180 €  12 %  0,12 × 0,031 × 180 = 0,67 €
/sleeping-bags     1,1 %   95 €  10 %  0,10 × 0,011 ×  95 = 0,10 €
/phone-cases       1,4 %   16 €  10 %  0,10 × 0,014 ×  16 = 0,02 €

(Illustrativt exempel.) Om dina marginaler varierar från sida till sida kan mål-CRR variera med dem. /winter-tyres har ett CRR-mål på 12 % här för att kategorin tål ett mindre strikt effektivitetsmål. Allt annat är mekaniskt. Du har nu en maxCPC för varje sida på sajten; nästa steg är den enda bedömning som återstår.

Steg 4 · Prioritera: sorteringen, före och efter

En maxCPC betyder inget på egen hand. 0,84 € är generöst på en marknad och oöverkomligt på en annan. Det som avgör är gapet till vad ett klick faktiskt kostar dig. Hämta därför din verkliga genomsnittliga CPC per sida från Google Ads-kontot, eller per marknad om kontot inte redovisar den per sida, och ställ den siffran bredvid sidans maxCPC.

Före, den råa joinen i den ordning raderna råkade hamna, omöjlig att läsa som en plan:

Sida               maxCPC  gen. CPC
/sleeping-bags     0,10 €   0,45 €
/phone-cases       0,02 €   0,35 €
/cordless-vacuums  0,84 €   0,55 €
/winter-tyres      0,67 €   0,40 €

Efteråt, sorterade efter spelrum (maxCPC − genomsnittlig CPC), blir samma fyra rader en arbetsorder med utlåtandet skrivet i sista kolumnen:

MålsidaCRAOVMål-CRRmaxCPCgen. CPCUtlåtande
/cordless-vacuums 2,0 %420 €10 %0,84 €0,55 €Bygg nu
/winter-tyres 3,1 %180 €12 %0,67 €0,40 €Bygg nu
/sleeping-bags 1,1 %95 €10 %0,10 €0,45 €Fixa först (problemsida)
/phone-cases 1,4 %16 €10 %0,02 €0,35 €Bry dig inte

(Illustrativt exempel.) Siffrorna är påhittade för att visa mekaniken, så stoppa in dina egna GA4-siffror. Varje maxCPC här är bara mål-CRR × CR × AOV applicerat på raden.

Två rader är uppenbara. /cordless-vacuums kan bära en CPC på 0,84 € när marknaden ligger på 0,55 €. Det ger 53 % spelrum, så du bygger den. /winter-tyres likaså. /phone-cases har bara råd med 0,02 € där klick kostar 0,35 €. Det kommer aldrig att funka ens i dina vildaste drömmar, så lämna den utanför och se dig inte tillbaka. Skala det här från fyra rader till tiotusen och toppen av den sorterade listan är din TOP 100–200, sidorna att bygga först, rankade efter sitt budutrymme.

Den intressanta är /sleeping-bags. maxCPC 0,10 € mot en marknad på 0,45 €, så på pappret ”bry dig inte”. Men /sleeping-bags drog flest sessioner i hela exporten, och sovsäckar är en kategori som uppenbart borde sälja. En misstänkt låg CR på en sida som borde konvertera är sällan ett efterfrågeproblem. Det är en problemsida, och problemsidor får en diagnos, inte en radering.

Steg 5 · Problemsidor: diagnosen på en verklig produktlistning

När en sidas konverteringsgrad ligger långt under vad kategorin borde leverera, fråga varför innan du sorterar bort den. Inom e-handeln handlar det oftast om hur konkurrenskraftiga priserna är på de produkter som sidan visar först. De första 10–20 produkterna som en besökare ser är sidans hela första intryck. Om de är dina minst prisvärda produkter rasar CR oavsett hur stor efterfrågan sidan lockar.

Så du läser kategorin exakt som kunden gör, i dess förvalda sorteringsordning, och priskontrollerar de produkter den listar först.

Läs kategorins produktmix i sorteringsordning

Hämta produkterna i /sleeping-bags från Google Merchant Center utifrån deras product_type, i sajtens förvalda listningsordning, alltså den som besökaren faktiskt ser. Det är produkterna högst upp i listan som konverterar (eller inte).

Priskontrollera toppositionerna mot marknaden

Ta de topplistade produkterna och undersök konkurrentpriser live med DataForSEO. Endpointen serp/google/organic/live/advanced returnerar hela resultatsidan (shopping-block med handlare och priser, organiskt under) som strukturerad JSON. Faktureringen sker per SERP med upp till 10 resultat, till ett baspris på ungefär 0,002 $ innan betalda avancerade parametrar.

Sänk priset eller ändra sorteringsordningen, mät sedan igen

Om produkterna som visas först är överprissatta har du två spakar. Sänk deras pris, eller ändra kategorins sorteringsordning så att genuint konkurrenskraftiga produkter hamnar först. Titta sedan på CR. Först när CR stiger flyttar du sidan från fix-högen till bygghögen.

Så här ser den diagnosen ut på /sleeping-bags, sidan vars maxCPC är 0,10 €. Toppen av listningen, ditt pris mot den billigaste konkurrenten DataForSEO hittade för samma produkt:

Pos.  Produkt (visas först)  Ditt pris  Billigaste konk.  Skillnad
   1  AlpineLite 200 Down Bag      129 €             99 €     +30 %
   2  TrekWarm Mummy −5°C          115 €            112 €      +3 %
   3  BaseCamp Synthetic XL         89 €             92 €      −3 %
   4  ValleyHike Junior             45 €             47 €      −4 %

(Illustrativt exempel.) Läckan är precis i toppen. Produkten som 12 300 månatliga sessioner landar på först är prissatt 30 % över det billigaste marknadserbjudandet. Allt under den är konkurrenskraftigt, men efter ett så dåligt första intryck fortsätter nästan ingen att scrolla. Sänk priset på AlpineLite till 105 €, eller ändra sorteringsordningen så att de konkurrenskraftiga BaseCamp och ValleyHike kommer först, och CR klättrar tillbaka till kategorins normala nivå. Kör om steg 3: maxCPC stiger över 0,10 €, och sidan flyttas till bygghögen.

Det här är loopen de flesta byråer aldrig sluter, eftersom den omfattar ett område de vanligtvis håller sig utanför. Butikens jobb (prissättning, merchandising, sorteringsordning) och byråns jobb (att köpa trafiken) är två halvor av en och samma optimeringsloop. Om du optimerar trafikinköpet utan att ta med butikens del betalar du för trafik som läcker bort.

Efter filtret: att välja hur du köper

Först nu, med bygghögen i hand, väljer du hur. AI Max, Dynamic Search Ads, klassisk STAG, eller en kombination (bred plus DSA i en kampanj). Om det blir en kampanj eller tre eller fem beror på kunden och konverteringsvolymen; respektera regeln om ungefär 30 konverteringar per kampanj innan du delar upp. Jag lämnar det här valet till dig med flit. Poängen med hela pipelinen är att du gör det efter ekonomin, inte före.

Vad du än väljer är regeln densamma. En ny kampanj får aldrig starta med dåliga sidor. Svaga målsidor trycker kontots ROAS under målet och förgiftar inlärningsfasen. Förfiltret begränsar lanseringen till sidor som kan bära sig. Därifrån bygger du superstrukturen: crawl-data plus sökordsanalys per kategori via Google Ads API, konstruerad i vågor efter kategori, språk och mognad. Den superstrukturen är ett kapitel för sig, och jag har beskrivit den i en separat artikel om marknadsexpansion.

Delen som knyter an till manifestet

Tekniskt är inget av det här nytt. Du kunde ha kört GA4-exporten, crawlen, prisskrapan och joinen för fem år sedan. Men det skulle ha varit ett halvår av skräddarsydd utveckling, och vem som helst vid sina sinnens fulla bruk hade gett upp halvvägs. Tolv års programmering mot Google Ads API har lärt mig exakt hur sådana projekt dör. Jag skriver ner det nu för att verktyg som Codex, Claude Code och den nuvarande generationen agenter har gjort det till ett helt vanligt tisdagsflöde: ett skript du kör på ett konto över natten.

Det är hela förskjutningen, och den är tydligast från bägge sidor på en gång. Butikens arbete med prissättning och merchandising och byråns arbete med annonsering smälter samman till en enda loop, och båda halvorna går äntligen att optimera tillsammans. Ekonomin är det som gör att du kan knyta ihop loopen.

Ta med den

Ladda ner de kompletta instruktionerna för din AI

Hela filtret ovan, omskrivet som en brief du klistrar in direkt i Claude eller någon annan kapabel kodagent. Du levererar GA4-exporten och crawlen; den räknar ut max-CPC för varje sida och ger dig högarna bygg, fixa och skippa tillbaka. Lämna din e-post så är filen din.

En fil, en lista. Jag skriver bara när det finns något värt att läsa.

FAQ

Varför använda maxCPC i stället för att bara titta på ROAS-mål i Google Ads?

Eftersom Googles tROAS reagerar efter att du spenderat pengar medan systemet lär sig. maxCPC är ett filter före lansering. Det berättar, före ett enda klick, vilka sidor som matematiskt kan bära kostnaden för betalda klick. Du använder det för att avgöra vad du ska bygga; tROAS kör sedan det du byggde.

Min CR och AOV svänger mycket månad till månad. Kan formeln verkligen fungera då?

Använd ett stabilt fönster på 60 till 90 dagar och segmentera på enhet eller marknad om värdena skiljer sig väsentligt mellan enheter eller marknader. Formeln är inte tänkt att vara precis på öret. Den sorterar sidor i bygg-, fix- och skippa-högar, så det du behöver är spelrummets ungefärliga storleksordning, inte den exakta siffran.

Behöver jag verkligen Screaming Frog, eller kan AI bara skriva crawlern?

Båda funkar. Screaming Frog med en anpassad XPath-extraktion är no-code-vägen och tar faktiskt bara tre minuter att sätta upp. En skriptad crawler är bättre om du behöver foga in datan i en pipeline automatiskt. Välj utifrån om det här är en engångsgranskning eller ett repeterbart arbetsflöde.

Vad räknas som en ”problemsida” kontra en sida jag bara ska skippa?

En skippa-sida har svag ekonomi till sin natur. Lågt AOV, svag köpavsikt, så dess maxCPC är genuint pytteliten och kommer alltid att vara det (/phone-cases på 0,02 €). En problemsida borde konvertera. Hyfsat AOV, verklig efterfrågan, massor av sessioner, men den gör det ändå inte, vanligtvis för att de produkter som visas först är överprissatta eller dåligt sorterade (/sleeping-bags på 0,10 €). Skippa-sidor lämnar du utanför; problemsidor fixar du och mäter sedan om.

Funkar det här bara för e-handel?

maxCPC-formeln funkar överallt där du har ett konverteringsvärde, även inom lead gen, där AOV blir lead-värde. Problemsidesdiagnosen (Merchant Center product_type, konkurrentprissättning, kategorisorteringsordning) är e-handelsspecifik. Lead-gen-problemsidor behöver sin egen diagnos, vanligtvis formulärfriktion eller ett erbjudande som inte matchar.

Hur kopplar det här till AI Max och slutet på DSA?

Det här filtret körs innan du väljer kampanjtyp. Oavsett om du väljer AI Max (DSA:s efterträdare) eller klassisk STAG bör kampanjen bara skicka trafik till sidor som klarade filtret. Strategivalet ändrar hur du köper; ekonomin avgör vad som är värt att köpa över huvud taget.


CTA: Vill du ha bygghögen för din sajt, rankad efter vad varje sida faktiskt har råd med? Skicka mig din GA4-export så kör vi filtret tillsammans.

Hela poängen med det här

Vill du ha den här nivån av insyn i ditt konto?

Ett mejl. Jag säger dig ärligt om det är värt det för din uppsättning.

Hör av dig →
Gratis nedladdning

Ladda ner de kompletta instruktionerna för din AI

Hela filtret ovan, omskrivet som en brief du klistrar in direkt i Claude eller någon annan kapabel kodagent. Du levererar GA4-exporten och crawlen; den räknar ut max-CPC för varje sida och ger dig högarna bygg, fixa och skippa tillbaka. Lämna din e-post så är filen din.

En fil, en lista. Jag skriver bara när det finns något värt att läsa.