Approfondimento· Strategia Search · 13 min di lettura

Da dove partire con le campagne Search su un sito enorme? Il tuo GA4 lo sa già.

Su un sito enorme la prima domanda Search non sono le keyword — è quali pagine possono permettersi di essere pubblicizzate. L'economia di GA4 risponde.

Porte giganti di pagine di destinazione smistate in pile SÌ e NO.
I fatti seri sono veri — le copertine degli articoli no.

In breve: Su un sito enorme la prima domanda Search non sono le keyword — è quali pagine di destinazione possono matematicamente permettersi di essere pubblicizzate. Dai in pasto un export di GA4 più una scansione del sito, calcola maxCPC = CRR obiettivo × CR × AOV per pagina, e confrontalo con il tuo CPC medio reale. Ne esce una pila TOP 100–200 da costruire ordinata, una pila di pagine problematiche da sistemare, e una pila da saltare — prima di spendere un centesimo.

TOP 100–200
pagine di destinazione che vale la pena costruire per prime
CRR × CR × AOV
il CPC massimo che ogni pagina può permettersi
~3 min
per impostare l'estrazione della scansione
0,10 € CPC
le pagine su cui non dovresti mai offrire

Cosa metti dentro, e cosa ottieni

Metti dentro due cose che già possiedi: un export di GA4 delle tue pagine di destinazione e una scansione del tuo sito. Ti ritorna una cosa sola — una lista ordinata delle pagine di destinazione che vale la pena di una campagna Search per prime, ognuna con l’esatto CPC massimo che può permettersi, e una pila pulita «non offrire su questa» per le pagine la cui economia vieta la ricerca a pagamento. Nessuno strumento per le parole chiave, nessuna intuizione, nessun «accendiamo le Dynamic Search Ads e vediamo». Un foglio di calcolo che ti dice dove puntare il budget prima di spenderne un centesimo.

Questo è tutto l’articolo. Qui sotto faccio girare la pipeline dall’inizio alla fine e, a ogni passaggio, ti mostro la cosa letterale che sputa fuori — le righe di GA4, l’aritmetica del CPC massimo su una sola riga, la tabella di estrazione della scansione, l’ordinamento di priorità prima e dopo, e la diagnosi delle pagine problematiche che salva una pagina che tutti gli altri cancellerebbero. I numeri sono illustrativi ovunque — inserisci i tuoi — ma le forme sono esattamente ciò che gli strumenti restituiscono.

Perché preoccuparsi di un controllo pre-volo? Perché la mossa di default su un sito da 10.000 URL è puntare una campagna generica su tutto e lasciare che Google ci pensi. Questo brucia budget su pagine che non avrebbero mai convertito, allenta il tuo ROAS obiettivo, e avvelena la fase di apprendimento. Questo filtro è l’assicurazione più economica che comprerai mai.

La pipeline in un riquadro

  • Cosa cerchiamo Le pagine di destinazione che vale la pena pubblicizzare, ordinate
  • Input Export pagine di destinazione GA4 · una scansione del sito
  • L'unica formula maxCPC = CRR obiettivo × CR × AOV
  • Cosa ottieni Una pila da costruire, una da sistemare e una da saltare

L’unico numero che decide tutto: il CPC massimo

Ogni pagina di destinazione ha un tetto — il massimo che puoi pagare per un clic restando sulla tua efficienza obiettivo. Calcolalo per pagina e l’intera prioritizzazione esce dalla matematica:

maxCPC = CRR obiettivo × CR × AOV

dove CRR (cost-revenue ratio — il PNO europeo, equivalente all’ACOS) è la quota di fatturato che sei disposto a spendere in pubblicità, CR è il tasso di conversione della pagina, e AOV è il suo valore medio dell’ordine.

Un esempio svolto, dritto dalla formula. Una pagina di categoria converte al 2%, con un ordine medio di 1.000 €, e sei disposto a spendere il 10% del fatturato in pubblicità (un ROAS di 10×):

maxCPC = 0,10 × 0,02 × 1.000 € = 2,00 €.

Se preferisci ragionare in ROAS, la stessa cosa si riorganizza in maxCPC = CR × AOV / ROAS = 0,02 × 1.000 / 10 = 2,00 €. Stesso numero, scegli la forma che il tuo cervello preferisce. (Esempio illustrativo.)

Quei 2,00 € sono il verdetto. Confrontali con il CPC medio reale nel tuo account per quel mercato e la pagina si ordina da sola: comodamente sopra il CPC medio → costruiscila; sotto → non può ripagarsi; molto sotto → non pensarci nemmeno. Tutto ciò che segue è solo produrre questo numero per ogni pagina, in modo affidabile, e leggere il risultato.

La pipeline a colpo d’occhio

Cinque passaggi. Per ciascuno: cosa fai, cosa hai davanti, e perché — perché ogni passaggio esiste per rispondere a una domanda specifica su una pagina.

1 — Tira giù l'economia delle pagine di destinazione da GA4

Fai: per pagina di destinazione, esporta sessioni, conversioni, transazioni e fatturato; deriva CR e AOV. Perché: questo è il segnale di domanda-e-soldi — senza, il CPC massimo è una congettura. Ottieni: una riga per pagina che porta i due numeri di cui si nutre la formula (CR e AOV).

2 — Scansiona il sito per la struttura

Fai: scansiona ogni pagina per titolo, H1, profondità del breadcrumb e — quella che conta — quanti prodotti elenca. Perché: GA4 conosce l’economia ma non la struttura; una pagina con due prodotti disponibili non può sostenere una campagna per quanto bene converta. Ottieni: lo specchio strutturale delle tue righe GA4, più un flag di pagina povera.

3 — Unisci i due, calcola il CPC massimo

Fai: unisci GA4 + scansione per URL, applica la formula su ogni riga, scarta le pagine povere. Perché: è qui che economia e struttura si incontrano e il verdetto diventa calcolabile. Ottieni: ogni pagina con un CPC massimo accanto.

4 — Prioritizza: CPC massimo vs. CPC medio reale

Fai: metti il CPC massimo di ogni pagina accanto al CPC medio reale nel tuo account o paese, ordina per margine. Perché: un CPC massimo non significa nulla isolato — solo il divario rispetto a quanto costano davvero i clic decide se una pagina può ripagarsi. Ottieni: la pila da costruire TOP 100–200, una da sistemare e una da saltare.

5 — Diagnostica le pagine problematiche

Fai: per le pagine che dovrebbero convertire ma non lo fanno, controlla la competitività di prezzo dei prodotti che elencano per primi. Perché: un CR basso su una pagina che dovrebbe vendere è di solito una perdita di merchandising, non un problema di domanda — ed è sistemabile. Ottieni: pagine recuperate dalla pila da saltare a quella da costruire, una volta che possono davvero convertire.

Ora gli stessi cinque passaggi, uno alla volta, ciascuno con la cosa letterale che produce.

Passaggio 1 — L’export di GA4, così come atterra

Non ti serve un report sofisticato. In GA4: Esplora → vuoto → Formato libero, dimensione Pagina di destinazione + stringa di query, metriche Sessioni, Eventi chiave / Conversioni, Entrate totali. Aggiungi Transazioni se ce l’hai; altrimenti l’AOV viene da fatturato ÷ conversioni. Un filtro a monte: escludi le pagine di dettaglio prodotto e tieni le pagine di categoria / collezione — stai dimensionando dove inviare il traffico, e sulla maggior parte dei siti sono le categorie, non i singoli SKU. Mescolare gli SKU distorce ogni AOV e CR che calcoli.

Ecco come appaiono quattro righe rappresentative una volta esportate, con CR e AOV derivati:

Landing page         Sessions  Conv   CR     Revenue    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

(Esempio illustrativo.) Il CR è conversioni ÷ sessioni; l’AOV è fatturato ÷ conversioni. Questo è l’intero input di cui la formula ha bisogno da GA4 — due colonne, CR e AOV, per pagina. Nota già che /sleeping-bags attira più sessioni di tutte nel set eppure converte peggio; tieni a mente questo pensiero, è quello interessante più avanti.

Passaggio 2 — La scansione, e la colonna che fa il lavoro

GA4 ti ha detto come performa ogni pagina. Non può dirti che una pagina è strutturalmente vuota — una «categoria» con due prodotti disponibili, o una vista a filtro parametrico che non dovrebbe mai sostenere una campagna. Per quello scansioni. Due strade: farti scrivere da un’AI un crawler usa-e-getta in cinque minuti, oppure usare Screaming Frog con un’estrazione XPath personalizzata che imposti in circa tre minuti (mini-guida completa nel riquadro da rubare). Eseguila in modalità Lista sul tuo set di URL di GA4 e macina in background mentre fai altro.

L’unica colonna che si guadagna il pane è il conteggio prodotti — quante schede prodotto la pagina renderizza davvero. Ecco l’output dell’estrazione unito alle stesse quattro pagine, più un’altra che la scansione segnala:

URL                  Title                H1               Products  Breadcrumb
/cordless-vacuums    Cordless Vacuums …   Cordless Vacuums      48    Home>Floorcare>Vacuums
/winter-tyres        Winter Tyres | …     Winter Tyres        112    Home>Tyres>Winter
/sleeping-bags       Sleeping Bags …      Sleeping Bags         9    Home>Camping>Sleep
/phone-cases         Phone Cases …        Phone Cases         640    Home>Accessories>Cases
/clearance-2019      Clearance            Clearance             0    Home>Clearance

(Esempio illustrativo.) La regola della pagina povera fa il suo lavoro sul posto: /clearance-2019 elenca 0 prodotti — una categoria vuota a cui GA4 registra comunque sessioni. Scarta qualsiasi pagina sotto i ~3 prodotti prima di prioritizzare, e quella pagina fantasma non raggiunge mai la pila da costruire. Mini-esempio, situazione → azione → risultato: la scansione mostra una «categoria» con zero prodotti attivi → la escludi prima della prioritizzazione → non sprechi una campagna (o un pomeriggio di un analista) su una pagina che non ha nulla da vendere.

Passaggio 3 — Unisci i due, e la formula su una singola riga

Ora i due dataset diventano uno. Unisci GA4 + scansione per URL e ogni pagina porta sia la sua economia (CR, AOV) sia la sua struttura (conteggio prodotti). Applica maxCPC = CRR obiettivo × CR × AOV lungo la colonna. Guardala atterrare su una riga reale — /cordless-vacuums, CRR obiettivo 10%:

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

Una riga, un tetto. Fallo per tutti e quattro i sopravvissuti e ottieni il CPC massimo per pagina da cui dipende tutta la decisione:

Page                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

(Esempio illustrativo.) Il CRR obiettivo può differire per pagina se i tuoi margini lo fanno — /winter-tyres porta il 12% qui perché la categoria tollera un’efficienza più larga. Tutto il resto è meccanico. Ora hai un CPC massimo per ogni pagina del sito; il passaggio successivo è l’unica scelta di giudizio rimasta.

Passaggio 4 — Prioritizza: l’ordinamento, prima e dopo

Un CPC massimo non significa nulla da solo. 0,84 € è generoso in un mercato e insostenibile in un altro — ciò che decide è il divario rispetto a quanto ti costa davvero un clic. Quindi tira giù il tuo CPC medio reale per pagina (o per mercato, se non lo hai a livello di pagina) dall’account Google Ads e mettili fianco a fianco.

Prima — l’unione grezza, nell’ordine in cui è uscita da GA4, è illeggibile come piano:

Page                maxCPC   avg 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

Dopo — ordina per margine (maxCPC − CPC medio) e le stesse quattro righe diventano un ordine di lavoro con il verdetto scritto nell’ultima colonna:

Pagina di destinazioneCRAOVCRR obiettivomaxCPCCPC medioVerdetto
/cordless-vacuums2.0%€42010%€0.84€0.55Costruisci ora
/winter-tyres3.1%€18012%€0.67€0.40Costruisci ora
/sleeping-bags1.1%€9510%€0.10€0.45Sistema prima (pagina problematica)
/phone-cases1.4%€1610%€0.02€0.35Non disturbarti

(Esempio illustrativo.) I numeri sono inventati per mostrare il meccanismo — inserisci le tue cifre GA4. Ogni maxCPC qui è solo CRR obiettivo × CR × AOV applicato alla riga.

Due righe sono ovvie. /cordless-vacuums può pagare 0,84 € contro un mercato a 0,55 € — +53% di margine, costruiscila. /winter-tyres allo stesso modo. /phone-cases può permettersi 0,02 € contro 0,35 €; non funzionerà mai nemmeno nei tuoi sogni più sfrenati, lasciala fuori e non voltarti indietro. Scala questo da quattro righe a diecimila e la cima della lista ordinata è la tua TOP 100–200 — le pagine da costruire per prime, ordinate per quanto spazio hanno per offrire.

Quella interessante è /sleeping-bags: maxCPC 0,10 € contro un mercato a 0,45 €. Sulla carta, «non disturbarti». Ma aveva più sessioni di tutte nell’intero export e una categoria che ovviamente dovrebbe vendere. Un CR sospettosamente basso su una pagina che dovrebbe convertire è raramente un problema di domanda. È una pagina problematica — e le pagine problematiche ottengono una diagnosi, non una cancellazione.

Passaggio 5 — Pagine problematiche: la diagnosi, su un elenco reale

Quando il tasso di conversione di una pagina sta molto sotto dove dovrebbe atterrare la categoria, chiediti perché prima di scartarla. Nell’e-commerce la risposta, il più delle volte, è la competitività di prezzo dei prodotti che la pagina mostra per primi. I primi 10–20 prodotti che un visitatore vede sono l’intera prima impressione della pagina; se quelli sono i tuoi articoli dal valore più debole, il CR crolla a prescindere da quanta domanda attira la pagina.

Quindi leggi la categoria esattamente come fa il cliente — nel suo ordinamento predefinito — e fai un price-check delle posizioni di punta.

Leggi il mix di prodotti della categoria nell'ordine di elenco

Tira giù i prodotti in /sleeping-bags per il loro product_type da Google Merchant Center, nell’ordine di elenco predefinito che il visitatore ottiene davvero. La cima della lista è ciò che converte (o no).

Fai un price-check delle posizioni in cima rispetto al mercato

Prendi i prodotti elencati in cima e ricerca i prezzi live della concorrenza con DataForSEO — l’endpoint serp/google/organic/live/advanced restituisce l’intera pagina dei risultati (blocchi shopping con merchant e prezzi, organico) come JSON strutturato a circa $0,0035 per query.

Riprezza o riordina, poi rimisura

Se le posizioni di punta hanno un prezzo troppo alto, hai due leve: riprezzare, o riordinare la categoria così che i prodotti genuinamente competitivi vadano in testa. Poi osserva il CR. Solo una volta che si solleva promuovi la pagina da «problematica» alla pila da costruire.

Ecco come appare letteralmente quella diagnosi su /sleeping-bags, la pagina che sta a maxCPC 0,10 €. Cima dell’elenco, il tuo prezzo vs. il concorrente più economico che DataForSEO ha trovato per lo stesso prodotto:

Pos  Product (first-listed)       Your price  Cheapest comp.  Gap
 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%

(Esempio illustrativo.) La perdita è proprio in cima: il prodotto che 12.300 visitatori mensili incontrano per primo ha un prezzo del 30% sopra l’offerta di mercato più economica. Tutto ciò che sta sotto è competitivo — ma nessuno scorre oltre una cattiva prima impressione. Mini-esempio, situazione → azione → risultato: il prodotto di punta è il 30% sopra il mercato → abbassa il suo prezzo a 105 € o riordina così che i competitivi BaseCamp e ValleyHike vadano in testa → il CR si riprende verso la norma di categoria → riesegui il Passaggio 3, il maxCPC si stacca dai 0,10 €, e la pagina viene promossa nella pila da costruire.

Questo è il ciclo che la maggior parte delle agenzie non chiude mai, perché attraversa un confine che di solito non toccano. Il lavoro del negozio (prezzi, merchandising, ordinamento) e il lavoro dell’agenzia (comprare il traffico) sono lo stesso ciclo di ottimizzazione. Affina uno senza l’altro e stai offrendo dentro una perdita.

Dopo il filtro: scegliere come compri

Solo ora — con la pila da costruire in mano — scegli il come: AI Max, Dynamic Search Ads, lo STAG classico, o una combinazione (generica + DSA in un’unica campagna). Una campagna o tre o cinque dipende dal cliente e dal volume di conversioni — rispetta la regola delle ~30 conversioni per campagna prima di dividere. Lascio questa scelta a te di proposito. Il senso dell’intera pipeline è che la fai dopo l’economia, non prima.

Qualunque cosa tu scelga, la regola è la stessa: una nuova campagna non deve mai partire su pagine cattive. Le pagine di destinazione deboli allentano il tuo ROAS obiettivo e avvelenano la fase di apprendimento. Il pre-filtro è ciò che mantiene il lancio puntato solo su pagine che possono ripagarsi — e da lì, costruire la super-struttura (dati di scansione + ricerca delle parole chiave per categoria tramite la Google Ads API, costruita a ondate per categoria, lingua e maturità) è un pezzo a sé, e ne ha uno.

La parte che si ricollega al manifesto

Tecnicamente, niente di tutto questo è nuovo. Avresti potuto fare l’export di GA4, la scansione, lo scraping dei prezzi e l’unione cinque anni fa. Ma sarebbe stato mezzo anno di sviluppo su misura, e chiunque sano di mente avrebbe mollato a metà. Il motivo per cui lo scrivo ora è che con strumenti come Codex, Claude Code e l’attuale generazione di agenti, questo ha smesso di essere un progetto ed è diventato un normale flusso di lavoro del martedì — uno script che punti a un account e lasci girare durante la notte.

È tutto qui lo spostamento, ed è più chiaro da entrambi i lati insieme: il lavoro di prezzi-e-merchandising dell’e-shop e il lavoro pubblicitario dell’agenzia collassano in un unico ciclo che puoi finalmente affinare insieme. L’economia ti permette di chiuderlo.

The part you can steal

La parte che puoi rubare

# 1) The ceiling on every landing page
maxCPC = target_CRR * CR * AOV
     = CR * AOV / ROAS          # same thing in ROAS form
# e.g. 0.10 * 0.02 * 1000 = €2.00  (10% CRR, 2% CR, €1000 AOV)

# 2) Screaming Frog custom extraction (~3 min, runs in background)
Configuration → Custom → Custom Extraction → Add
• Products on page   XPath:  count(//div[contains(@class,'product-card')])
                     extractor type: Function Value   (count() returns a number)
• H1                 XPath:  //h1                       → Extract Text
• Breadcrumb         XPath:  //nav[@aria-label='breadcrumb']  → Extract Text
Crawl (or List mode on your GA4 URL set) → export → join to GA4 by URL.
Drop any page with < ~3 products as a thin page before you prioritize.
  1. Usa Function Value, non Extract Text, per il conteggio prodotti. count() restituisce un numero; l’estrattore di testo se lo mangia. Questo è il singolo motivo più comune per cui la colonna del conteggio torna vuota.
  2. Adatta il selettore della scheda prodotto al sito. Tasto destro su una scheda prodotto → Ispeziona → prendi la classe stabile. Azzecca questo XPath una volta e il filtro delle pagine povere gira da solo.
  3. Filtra prima le pagine di dettaglio prodotto dall’export di GA4. Stai dimensionando dove inviare il traffico — pagine di categoria e collezione — non i singoli SKU. Mescolarli distorce ogni AOV e CR che calcoli.
  4. Diagnostica le pagine problematiche nell’ordine di elenco. Tira giù la categoria per product_type nel suo ordine di elenco predefinito e fai un price-check delle posizioni in cima — è la prima impressione a convertire, non la media della pagina.

FAQ

Perché usare il maxCPC invece di guardare solo gli obiettivi ROAS in Google Ads?

Perché il tROAS di Google reagisce dopo che hai speso soldi per imparare. Il maxCPC è un filtro pre-lancio: ti dice, prima di un solo clic, quali pagine possono matematicamente permettersi di pubblicizzarsi. Lo usi per decidere cosa costruire; usi il tROAS per far girare ciò che hai costruito.

Il mio CR e l'AOV oscillano molto di mese in mese. Non rompe la formula?

Usa una finestra stabile — da 60 a 90 giorni — e segmenta per dispositivo o mercato se differiscono in modo rilevante. La formula non è pensata per essere precisa al centesimo; smista le pagine in pile costruisci / sistema / salta. Ciò che cerchi è un margine come ordine di grandezza.

Mi serve davvero Screaming Frog, o l'AI può semplicemente scrivere il crawler?

Funzionano entrambi. Screaming Frog con un’estrazione XPath personalizzata è la via no-code ed è genuinamente una configurazione da tre minuti. Un crawler con script è meglio se ti serve che i dati vengano uniti automaticamente in una pipeline. Scegli in base al fatto che sia un audit una tantum o un flusso di lavoro ripetibile.

Cosa conta come «pagina problematica» rispetto a una pagina da saltare?

Una pagina da saltare ha un’economia debole per natura — AOV basso, intento basso — quindi il suo maxCPC è genuinamente minuscolo e lo sarà sempre (/phone-cases a 0,02 €). Una pagina problematica dovrebbe convertire — AOV decente, domanda reale, tante sessioni — ma non lo fa, di solito perché i suoi primi prodotti in elenco hanno un prezzo troppo alto o sono mal ordinati (/sleeping-bags a 0,10 €). Le pagine da saltare le lasci fuori; quelle problematiche le sistemi, poi rimisuri.

Funziona solo per l'e-commerce?

La formula del maxCPC funziona ovunque tu abbia un valore di conversione — lead gen incluso, dove l’AOV diventa il valore del lead. La diagnosi delle pagine problematiche (product_type del Merchant Center, prezzi della concorrenza, ordinamento di categoria) è specifica dell’e-commerce; le pagine problematiche di lead gen hanno bisogno della loro diagnosi, di solito attrito nel form o offerta non allineata.

Come si collega ad AI Max e alla fine delle DSA?

È a monte di quella decisione. Qualunque tipo di campagna tu scelga — AI Max, il successore delle DSA, lo STAG classico — dovrebbe sempre puntare solo a pagine che hanno superato questo filtro. La scelta strategica cambia come compri; l’economia decide cosa vale la pena comprare.


CTA: Vuoi la pila da costruire per il tuo sito, ordinata per ciò che ogni pagina può davvero permettersi? Facciamo girare il filtro sul tuo GA4.

Il senso di tutto questo

Vuoi questo livello di visibilità nel tuo account?

Una sola e-mail. Ti dirò onestamente se ne vale la pena per il tuo setup.

Contattami →