Charter System Sorrento.
Audit completo Google Ads.
Questo documento riassume tutto quello che è emerso dall'analisi della campagna Landing 2026 — performance, sprechi, opportunità — e si conclude con un piano di azioni concrete divise per priorità.
La campagna sta perdendo soldi e la strategia di bidding sta inseguendo il segnale sbagliato — ma prima di ottimizzare qualunque cosa, va fixato il tracking: tutto il resto si appoggia su numeri inquinati.
Marco ha confermato che le conversioni non sono impostate correttamente: la landing chartersystemsorrento.com porta a un booking esterno su CharterPro la cui conversione finale non torna a Google Ads. Tutti i numeri di conversione, CPA, conversion rate e ROAS in questo report sono artefatti di un tracking incompleto. I numeri di volume (spesa, clic, impressioni, CTR) restano affidabili.
01Cosa abbiamo scoperto
14 insight pre-calcolati nel dataset, raggruppati per gravità. I 4 rossi in cima sono i nodi che, da soli, spiegano la maggior parte dell'inefficienza.
5 conversioni nel periodo: 1 acquisto reale (€353,70 valore) + 4 begin_checkout (€0 valore). ROAS = 0,14×. Servirebbero 5–7× più acquisti per pareggiare. Causa root: bidding "Massimizza conversioni" senza tCPA + valori non differenziati → Google insegue il segnale facile (begin_checkout) invece di quello di valore (acquisto).
conversions.json → period_summary.economic_analysisLa homepage /en ha 3 conv (€220 CPA). /en/tour-page/Capri-Private-Boat-Tour ha 2 conv (begin_checkout). Le altre 5 landing: zero. Spesa landing senza conversioni: €1.365 = 53% del budget.
/en/landing2026 è la trappola più costosaPagina con CTR migliore di tutti (6,51%) ma 0 conversioni su 109 click. €688 bruciati = 26% del budget di campagna finiti su questa singola pagina senza ritorno. L'annuncio attira ma la pagina non chiude.
landing_pages.json → analysis.unknown_landing_alert/en/luxury-experience: 1.217 impressioni, 0 click. /en/boats: 1.939 impressioni, 9 click (CTR 0,46%). Sitelink che bruciano impression share senza generare traffico utile.
La UI Google Ads segnala un problema attivo nelle azioni del gruppo "Contatto" — probabilmente tag misfiring, link GA4 rotto, o definizione obsoleta. Questo spiega perché la conversione "contatto ricevuto" non scatta mai anche se il sito ha sicuramente form attivi.
Budget €190/giorno disponibile, spesa media €143/giorno. La campagna NON è budget-limited. Aumentare il budget non aumenterà i volumi: per crescere serve aumentare bid o migliorare quality score.
"rent a boat in capri italy" ha generato l'unica conversione di valore: CPA €10,42 contro €516 medio = 50× meglio. Non è ancora una keyword target (compare solo nei search terms). Promuoverla a exact match è la singola azione con miglior rapporto effort/risultato.
Le query brand (charter system sorrento e varianti) hanno generato 15 click e €143,62 spesi, 0 conversioni. Da capire se sono clienti già acquisiti che cercano il sito (escludibili) o un problema UX della home (da fixare).
50,76% del costo va in termini visibili che generano 1/5 conv. Il restante 49% finisce in "Other search terms" aggregato (privacy threshold di Google) e da lì arrivano 4 conversioni su 5. L'ottimizzazione per singolo termine ha leva limitata.
24 sitelink attivi su 41 sono creati automaticamente da Google AI. Possibilmente alcuni non sono brand-coerenti. Da auditare uno per uno.
CTR 13,71% contro media campagna 9,4% (4× sopra). Segnale fortissimo: gli utenti vogliono vedere immagini prima di prenotare. Implicazione per il sito: gallery prominente above the fold.
"Amalfi Coast Boat Tour" rimosso aveva CTR 26,67%. "Private Capri Boat Tour" rimosso aveva CTR 6,67%. Capire perché sono stati rimossi e valutare riattivazione.
Solo sitelink presenti nel report. Mancano callout, snippet strutturati, immagini, promozioni, prezzi, callout — tutti visibili nella UI ma non esportati. Da scaricare separatamente per audit completo.
545 negativi totali ma solo 471 unici: 71 sono duplicati (presenti sia ad account sia a campagna/gruppo). Inoltre nessuna lista condivisa configurata: 471 negativi gestiti riga per riga invece di clusterizzati per tema.
02I numeri della campagna
Dati aggregati dei 18 giorni analizzati. Tutti i 4 file performance (keywords.json, ads.json, search_terms.json, landing_pages.json) coincidono perfettamente sul totale campagna — quality check superato.
Settings campagna
| Parametro | Valore attuale | Note |
|---|---|---|
| Tipo | Search Network + AI Max | AI Max attivo ma 0 contributo nel periodo |
| Strategia bidding | Massimizza conversioni | Nessun tCPA — Google non ha freno sul costo |
| Budget | €190/giorno | ~€5.700/mese teorico |
| Spesa media giornaliera | €143,46 | Utilizzo 75% del budget |
| Conversion objectives | 3 azioni specifiche | Acquisti, Clic in uscita, "altri 1" |
| Optimization score | 100% | Riflette feature adoption, non performance |
| Customer acquisition | Stessa offerta nuovi/esistenti | Da rivedere |
03Performance per landing page
7 URL distinti effettivamente raggiunti dagli utenti che cliccano sugli annunci. Mix di final URL degli annunci e URL dei sitelink. Solo 2 generano conversioni; le altre 5 bruciano oltre metà del budget.
| URL | Click | Imp. | CTR | Costo | Conv. | CPA |
|---|---|---|---|---|---|---|
/en (home) |
116 | 1.822 | 6,37% | €662,69 | 3 | €220,90 |
/en/landing2026 |
109 | 1.674 | 6,51% | €688,14 | 0 | — |
/en/tour-page/Capri-Private-Boat-Tour |
86 | 1.577 | 5,45% | €544,46 | 2 | €272,23 |
/en/tours |
62 | 2.110 | 2,94% | €368,58 | 0 | — |
/en/tour-page/Private-Boat-Positano-Amalfi-Coast |
36 | 1.508 | 2,39% | €249,26 | 0 | — |
/en/boats |
9 | 1.939 | 0,46% | €59,41 | 0 | — |
/en/luxury-experience |
0 | 1.217 | 0,00% | €0,00 | 0 | — |
Punteggio velocità mobile = "—" per tutte le pagine. Google non l'ha calcolato — anomalia da indagare con PageSpeed Insights.
Spesa per esito
/en + /en/tour-page/Capri-Private-Boat-Tour./en/landing2026, /en/tours, /en/tour-page/Private-..., /en/boats.04Search terms — le query reali
974 termini visibili individualmente + un aggregato "Other search terms" che nasconde il 49% del costo per privacy threshold di Google.
Distribuzione operativa dei 974 termini
| Categoria | N. termini | Significato |
|---|---|---|
| Solo impressioni | 788 | Hanno generato impression ma 0 click — mismatch intent |
| Click senza conversione | 166 | Click + costo, zero conv — candidati a negativo o osservazione |
| Già escluse | 11 | Già negativizzate manualmente |
| Già aggiunte come keyword | 8 | Promosse a keyword target |
| Convertenti | 1 | L'unica con conversione registrata |
L'unico convertente è "rent a boat in capri italy" — CPA €10,42, cioè 50× più efficiente della media campagna. Questa è la singola azione con miglior leva: promuoverlo a keyword exact match.
Top spender senza conversioni
| Termine | Click | Costo | Note |
|---|---|---|---|
charter system sorrento | 9 | €89,23 | Brand search — non converte |
sorrento luxury charter | 4 | €56,44 | Possibile competitor |
amalfi yacht charter | 2 | €28,30 | Generic, alto intent |
capri boat service capri | 1 | €27,72 | Possibile competitor |
amalfi luxury charter | 2 | €25,54 | Generic luxury |
private boat tour sorrento | 2 | €25,28 | Variante delle keyword target |
charter system sorrento (altra var.) | 2 | €19,44 | Brand search — non converte |
05Asset & sitelink
L'export contiene solo i 41 sitelink. Mancano callout, snippet strutturati, immagini, promozioni, prezzi e altri tipi di asset visibili nella UI dell'annuncio.
Top performer per CTR
| Sitelink | CTR | Click | Imp. |
|---|---|---|---|
| Photo Gallery | 13,71% | 17 | 124 |
| Private Boat Tours | 10,68% | 68 | 637 |
| Amalfi Coast Private Boat | 9,95% | 101 | 1.015 |
| Luxury Yacht Cruise | 9,90% | 91 | 919 |
| Positano And Amalfi Tour | 9,71% | 20 | 206 |
Sitelink rimossi che performavano
- Amalfi Coast Boat Tour — rimosso il 2 aprile 2026, aveva CTR 26,67% (4 click su 15 imp). Riattivazione consigliata.
- Private Capri Boat Tour — rimosso il 2 aprile 2026, aveva CTR 6,67%. Capire perché.
06Negative keywords
545 negativi totali (471 unici) distribuiti su 3 livelli, gestiti riga per riga senza alcuna lista condivisa. Notevole presenza di duplicati cross-livello (waste di gestione).
Per match type
- 461 broad (parola singola che blocca solo se la query contiene tutti i token)
- 83 exact (blocca solo query identica, sintassi
[parola]) - 1 phrase (anomalia statistica — vale la pena verificarlo)
71 duplicati cross-livello
Parole già escluse a livello account ridichiarate inutilmente a campagna o gruppo annunci. Esempi: airbnb, apartment, cheap, festival, lodging, restaurants, weather. Cleanup immediato consigliato.
07Conversioni & tracking
L'account ha 11 azioni di conversione configurate, di cui 3 mirate dalla campagna. Il sistema attuale è incompleto: il booking esterno su CharterPro non riporta indietro le conversioni reali.
I numeri di conversione che vedi in tutto il report sono basati su tag che scattano sul sito ma non includono i booking effettivamente completati su CharterPro. La singola conversione "valore €353,70" registrata non corrisponde necessariamente a un booking reale.
Le 3 azioni mirate dalla campagna
| Azione | Categoria | Conv. nel periodo | Stato |
|---|---|---|---|
gads_acquisto | Acquisto | 1 | Attiva — l'unica di valore |
ads_begin_checkout | Inizio procedura pagamento | 4 | Attiva — micro-conv |
whatsapp conversione 2026 | Click in uscita | 0 | Attiva — segnale debole |
gads_contatto_ricevuto | Contatto | 0 | ⚠ Richiede attenzione |
08Azioni Google Ads · Critiche
Tutte le azioni che Marco esegue direttamente nella UI di Google Ads. Le critiche andrebbero affrontate entro 1-2 settimane.
Cleanup 71 negativi duplicati cross-livello
71 parole sono escluse sia ad account level sia a campagna/gruppo annunci. Sono ridondanti e rendono la gestione confusa. Lista completa in negative_keywords.json → analysis.cross_level_duplicates.
Audit dei 24 sitelink AI-generated
24 sitelink attivi su 41 sono creati automaticamente da Google AI. Possibilmente alcuni non sono brand-coerenti. Per ognuno: mantenere se buono, riscrivere se title impreciso, rimuovere se fuorviante.
Riattivare i 2 sitelink rimossi che performavano
"Amalfi Coast Boat Tour" rimosso aveva CTR 26,67% (4× sopra media). "Private Capri Boat Tour" rimosso aveva CTR 6,67%. Capire perché sono stati rimossi e riattivare se non c'è motivo solido.
Decidere strategia su brand search
"charter system sorrento" + varianti = 15 click, €144 spesi, 0 conversioni. Verificare in GA4: clienti già acquisiti che cercano il sito (escludere) o problema UX home (fixare). Se escluso: risparmio ~€290/mese.
Promuovere "rent a boat in capri italy" a exact match
L'unico termine convertente visibile, CPA €10,42 contro €516 medio (50× meglio). Aggiungerlo come [rent a boat in capri italy] exact nell'ad group "gruppi landing". Bid iniziale = CPC medio campagna €6,13.
Risolvere il warning "Contatto" — Richiede attenzione
La UI segnala un problema attivo nel gruppo "Contatto". Probabilmente gads_contatto_ricevuto non scatta. Aprire UI → Strumenti → Conversioni → cliccare nel gruppo "Contatto" → identificare azione in errore → leggere diagnostico → fix tag o rimuovere.
Audit completo delle 11 azioni di conversione
L'account ha 11 gruppi di azioni configurate. Per ognuna decidere: Primary (guida bidding) / Secondary (osservazione) / Disabled (archiviata). Output: tabella di decisioni in conversions_action_plan.md.
Esportare il Quality Score per ogni keyword
Quality Score, Esp. CTR, Pertinenza annuncio, Esperienza pagina di destinazione non sono nel dataset. Aggiungere colonne in Google Ads → Parole chiave → Personalizza colonne → riesportare → caricare nel dataset.
09Azioni Google Ads · Consigliate
Da affrontare entro 1-2 mesi. Impatto medio o azioni di follow-up sulle critiche.
Creare 4-5 liste condivise di negative keywords
471 negativi unici gestiti riga per riga senza struttura. Cluster proposto: wrong-intent-info, wrong-intent-cheap, competitor-brand, unrelated-topics, wrong-location. Migrare i singoli negativi nelle liste corrispondenti.
Aggiungere nuovi negativi dai termini ad alto costo / zero conv
Filtrare search_terms.json per termini con costo >€20 e conversioni = 0. Verificare per ognuno: competitor, mismatch intent, o variante valida. Ricorrente mensilmente.
Match type tightening — convertire keyword broad in phrase
Tutte le 17 keyword sono broad. Il 49% del costo finisce in "Other search terms" non controllabile. Stringere a phrase per le keyword più rumorose riduce questo aggregato. Approccio a step: 5 keyword/mese.
Aggiungere sitelink mancanti
Entrambi gli RSA hanno suggerimento "Aggiungi 1 altro sitelink". Considerare creazione di sitelink tematici nuovi: "Sunset Tour", "Group Discount", "Last Minute".
Espandere asset mancanti (callout, snippet, prezzi, promozioni)
Asset visibili in UI ma non nel dataset: callout, snippet strutturati, immagini, promozioni, prezzi. Aggiungere 8-10 callout brevi ("5-Star Rated", "All-Inclusive", "Free Cancellation"...), snippet servizi, refresh promozioni mensili.
10Azioni Google Ads · Bassa priorità
Nice to have, sperimentazioni e ottimizzazioni fini. Da affrontare quando le critiche e consigliate sono in piedi.
A/B test nuovo RSA con copy "rent a boat capri"
Creare un terzo RSA con headline ottimizzate per la keyword convertente. Far girare 30 giorni vs RSA esistenti.
Pin headlines strategici sui top performer
Considerare di pinnare in posizione 1 una headline brand-strong. Sperimentare con cautela — pinnare può ridurre ad strength.
DKI usage review
Verificare che il {KeyWord:Capri Private Boat Tour} presente nell'H15 di entrambi gli RSA scatti effettivamente con la sostituzione dinamica.
Ad rotation strategy
Verificare e documentare la rotazione annunci attuale. Default Google è "Ottimizza".
Splitting in più ad group tematici
Da 1 ad group con 17 keyword a 4 ad group tematici (Capri / Amalfi / Positano / Generic). Migliora QS via allineamento. Trade-off: più complessità di gestione.
11Azioni Google Ads · Post-fix tracking
Bloccate dal fix conversioni (file 01). Una volta che il tracking è affidabile, queste sono le mosse di bidding strutturali che cambiano davvero la performance.
Spostare micro-conversioni a Secondary
ads_begin_checkout e whatsapp conversione 2026 → "Includi in conversioni" = No. gads_acquisto rimane unica Primary con valore €500. Effetto: il numero di "conversioni" UI scenderà da 5 a 1, ma Smart Bidding ottimizzerà il segnale corretto.
Switch a "Massimizza valore conversione"
Cambiare bidding strategy. Forza Google a privilegiare conversioni di valore alto. Solo dopo che gads_acquisto trasmette correttamente il valore €500 (o dinamico).
Introdurre tROAS dopo 30+ conversioni
Una volta accumulate ≥30 conversioni gads_acquisto, aggiungere tROAS: 1.0 = pareggio, 1.5-2.0 = sano (15-30% margine), 3.0+ = aggressivo.
12Lavoro sul sito · in delega
Interventi che Claude Code esegue direttamente sul repo OctoberCMS. Sintesi dei 9 interventi del file 02_ottimizzazione_sito.md; per i dettagli tecnici (file Twig, struttura, code snippet) consultare quel documento.
Audit Core Web Vitals delle 7 landing pages
PageSpeed Insights su ogni URL. Identificare le 2-3 pagine sotto soglia per LCP/INP/CLS che meritano fix immediato.
Risolvere il mistero /en/landing2026
Capire cos'è questa pagina che brucia €688 a zero conv: aprirla nel repo, confrontarla con /en, decidere se ottimizzarla, redirigere o eliminare.
Allineamento copy annuncio ↔ landing
Per le landing convertenti: ottimizzare title, meta description, H1, H2 con le keyword target. Migliora Quality Score.
Gallery prominente above the fold
Photo Gallery sitelink ha CTR 13,71% (4× la media). Riflesso sul sito: aggiungere gallery hero nelle landing principali.
Audit sitelink "morti"
/en/luxury-experience e /en/boats: capire se la pagina è di bassa qualità o se è il sitelink ad essere mal scritto.
Struttura URL · Schema.org · Multi-lingua · A/B test
Cleanup URL kebab-case, JSON-LD per rich snippets, hreflang se multi-lingua, A/B test su CTA principale (richiede tracking funzionante).
13Roadmap a 90 giorni
Sequenza consigliata per non sovraccaricarsi e per rispettare le dipendenze tra interventi.
🛠 Su GTM/GA4: audit container e property, mappatura flusso CharterPro.
🌐 Sul sito: audit PageSpeed Insights delle 7 landing, risoluzione mistery
/en/landing2026.
🅖 Creare 4-5 liste condivise di negativi (3.B.1), aggiungere sitelink mancanti (3.B.4), espandere callout/snippet/prezzi (3.B.5).
🌐 Allineamento copy annuncio ↔ landing, gallery prominente.
🅖 Spostare
ads_begin_checkout e WhatsApp a Secondary (3.D.1). Switch a "Massimizza valore conversione" (3.D.2). Match type tightening progressivo (3.B.3).Monitoraggio settimanale: ROAS reale, conversioni accumulate, CPA medio, CPC.
Iterazione mensile su negativi nuovi dai search terms freschi, refresh promozioni, A/B test RSA, audit trimestrale GTM.
A 90gg: prima review completa di KPI vs baseline pre-intervento.
Indicatori di successo a 90 giorni
- Conversioni
gads_acquistoin Google Ads = ±10% rispetto a booking confermati su CharterPro DB - 0 azioni di conversione in stato "Richiede attenzione"
- 0 negativi duplicati cross-livello
- 4-5 liste condivise di negativi attive
- Bidding strategy = "Massimizza valore conversione" (con o senza tROAS)
- Spesa "wasted" su landing zero-conv scesa dal 53% attuale al ≤30%
- Quality Score medio aumentato di almeno 1 punto su 5+ keyword
- Volume conversioni ≥30 in rolling 30gg
14Domande aperte
Cose che resta da chiarire durante l'esecuzione, in ordine di urgenza.
- CharterPro è su sottodominio o dominio separato? Determina la strategia di cross-domain tracking.
- Discrepanza valore acquisto: €353,70 registrato vs €500 dichiarato come deposito medio. Il valore è dinamico per booking? La configurazione è statica e sbagliata?
- Cosa è esattamente
/en/landing2026? Esiste nel repo? È una landing dedicata o un sitelink? - C'è un Consent Management Platform installato? Quale? Necessario per Consent Mode v2.
- Sono stati installati altri pixel (Meta, TikTok, Bing)? Da inserire nel piano GTM?
- Le 5 conversioni del periodo includono qualche booking reale completato su CharterPro o sono tutti tag che scattano per altri motivi?