# Diagnóstico SEO — Paver Driveways

- **URLs:** la página base `/paver-driveways-palm-beach-broward` y sus 20 páginas de
  ciudad (`/paver-driveways-<ciudad>`)
- **Fecha:** 2026-10-30
- **Herramientas:** claude-seo v2.5.0 (`/seo-local`), Search Console API, Playwright
  (`_scripts/medir-pagina.py`) y búsquedas web
- **Datos crudos:** [`mediciones/20261030-antes/`](mediciones/20261030-antes/). El reporte
  original de `/seo-local` está en [`seo-local.md`](mediciones/20261030-antes/seo-local.md)

## Resumen

La vertical casi no existe en Google: 156 impresiones y 1 clic en 28 días, en
posiciones entre 60 y 90. Hay tres frentes:

1. **El negocio, fuera del código:** las reseñas que muestra el sitio no coinciden con
   una señal externa, la ficha de Business Profile apunta a la URL vieja, el negocio no
   aparece en casi ningún directorio y tiene poca autoridad local.
2. **Las 20 páginas de ciudad:** comparten en promedio el 65 % del texto. Es el patrón
   que Google trata como páginas puerta.
3. **On-page de la vertical:** titles de 75 a 83 caracteres, schema incompleto y
   5,2 MB de imágenes.

```
Puntaje de SEO local: 44/100 (estimado)

Ficha de Business Profile:   12/25  █████░░░░░
Reseñas:                      8/20  ████░░░░░░
On-page local:               11/20  █████░░░░░
NAP y directorios:            5/15  ███░░░░░░░
Schema local:                 6/10  ██████░░░░
Autoridad local:              2/10  ██░░░░░░░░
```

Son estimaciones con la guía de `/seo-local`: no hay datos internos de la ficha ni
posiciones reales en el mapa (ver "Limitaciones").

- **Tipo de negocio:** híbrido. Tiene dirección física visible (3300 S Congress Ave,
  Suite 4, Boynton Beach) y trabaja en un área de servicio de 20 ciudades.
- **Vertical:** servicios del hogar. Es un contratista general certificado de Florida,
  licencia **CGC**1521715.

## Rendimiento actual en Google (línea base)

### Por página

| Página | Impresiones (28 días) | Clics | Posición (28 días) | Impresiones (7 días) | Posición (7 días) |
|---|---:|---:|---:|---:|---:|
| `paver-driveways-palm-beach-broward` (base) | 68 | 0 | 81,7 | 44 | 85,3 |
| `paver-driveways-deerfield-beach` | 22 | 0 | 64,7 | 21 | 64,2 |
| `paver-driveways-jupiter` | 17 | 0 | 74,5 | 5 | 66,6 |
| `paver-driveways-boca-raton` | 16 | 0 | 82,3 | 12 | 81,7 |
| `paver-driveways-delray-beach` | 15 | 0 | 71,3 | 15 | 71,3 |
| `paver-driveways-west-palm-beach` | 5 | 0 | 62,0 | 2 | 40,0 |
| `paver-driveways-wellington` | 4 | 0 | 20,5 | — | — |
| `paver-driveways-coral-springs` | 3 | 0 | 90,0 | — | — |
| `paver-driveways-boynton-beach` | 2 | 1 | 66,5 | — | — |
| `paver-driveways-palm-beach-gardens` | 2 | 0 | 67,5 | 2 | 67,5 |
| `paver-driveways-gulfstream` | 1 | 0 | 13,0 | — | — |
| `paver-driveways-parkland` | 1 | 0 | 8,0 | — | — |
| **Total de la vertical** | **156** | **1** | — | **101** | — |

- **Ventanas:** 28 días = 02/10–27/10; 7 días = 21/10–27/10. Son las mismas que usa
  el diagnóstico de la home.
- **Sin impresiones:** 9 de las 20 ciudades (Coconut Creek, Greenacres, Hypoluxo,
  Juno Beach, Jupiter Island, Lake Worth, Loxahatchee, Pompano Beach y West Lake).
- **Búsquedas anónimas:** 96 de las 156 impresiones vienen de búsquedas que Search
  Console no muestra por privacidad. Por eso el reporte de `/seo-local`, que sumaba
  solo las búsquedas visibles, hablaba de 60 impresiones.
- **Indexación:** las 21 URLs están en el sitemap. No se inspeccionaron una por una.

### Posiciones por búsqueda hoy

Todas las búsquedas visibles de la vertical. Es la línea base que se compara en
[resultado.md](resultado.md).

| Búsqueda | Página | Impresiones (28 días) | Posición (28 días) | Posición (7 días) |
|---|---|---:|---:|---:|
| marble driveways fort lauderdale fl | base | 23 | 78,0 | 77,1 |
| paver driveways fort lauderdale | base | 7 | 85,0 | 84,8 |
| driveway paver installation boca raton | boca-raton | 6 | 83,2 | 81,0 |
| travertine paver installation jupiter | jupiter | 4 | 81,8 | — |
| driveway pavers palm beach county | west-palm-beach | 3 | 75,0 | 69,0 |
| travertine installation jupiter | jupiter | 3 | 84,7 | — |
| travertine paver installation coral springs | coral-springs | 3 | 90,0 | — |
| driveway pavers palm beach county | base | 2 | 79,5 | 80,0 |
| deerfield beach pavers | deerfield-beach | 1 | 75,0 | — |
| driveway pavers fort lauderdale | base | 1 | 100,0 | — |
| driveway pavers palm beach gardens | base | 1 | 95,0 | 95,0 |
| driveway pavers palm beach gardens | palm-beach-gardens | 1 | 70,0 | 70,0 |
| jupiter pavers installation near me | jupiter | 1 | 70,0 | 70,0 |
| paver patio palm beach county | base | 1 | 64,0 | — |
| pavers palm beach county | base | 1 | 74,0 | — |
| pools patios and driveways | base | 1 | 97,0 | 97,0 |
| travertine paver installation palm beach county | base | 1 | 79,0 | — |

- "—" significa que la búsqueda no tuvo impresiones en esos 7 días.
- **Búsquedas objetivo del plan:** `paver driveways palm beach county`,
  `paver driveways broward county`, `paver driveways boca raton` y
  `paver driveways boynton beach`. **Hoy la vertical no aparece en ninguna.**
- **Límite de los datos:** Search Console solo muestra las búsquedas con impresiones.
  Para la posición en las demás haría falta un rastreador (por ejemplo DataForSEO), que
  hoy no está configurado.

## Hallazgos

### Alta

**H1. Las reseñas que muestra el sitio no están verificadas.**

- **Lo que dice el sitio:**
  - `100+ 5.0★ Google Reviews` en `components/home/proof-and-process.blade.php`, que se
    ve en las 242 páginas de servicio (a través de `layouts/service.blade.php`) y en
    `/estimate`.
  - "100+ five-star Google reviews" en una FAQ de `app/Support/PageFaqMap.php`.
- **Señal externa sin verificar:** una página de prospección de leads atribuye a
  "Patios Pools Driveways" **4,1★ con 87 reseñas en Google y 1,7★ con 39 en Yelp**.
  Esa página bloquea el acceso automático (403) y no confirma la dirección, así que
  puede ser otra empresa.
- **Por qué importa:** si los números reales son esos, el sitio afirma algo falso en
  242 páginas. Es un riesgo de confianza y, en EE. UU., de publicidad engañosa (FTC).
- **Referencia de la competencia:** Five Star Pavers & Pool Remodels figura con
  **5,0★ y 462 reseñas**.
- **`aggregateRating` en el schema:** no se recomienda. Google no muestra estrellas
  para reseñas que un negocio publica sobre sí mismo en su sitio.

**H2. Las páginas de ciudad no pasan la prueba de intercambio.**

Comparé el copy propio de las 20 ciudades
(`resources/views/services/hardscape/paver-driveways/areas/*.php`), reemplazando el
nombre de cada ciudad por un marcador, en los 190 pares posibles:

- **Similitud media: 65 %** (mínimo 53 %, máximo 78 %). Los pares más parecidos son
  Coconut Creek / Pompano Beach (78 %) y Boca Raton / Coconut Creek (75 %).
- Eso deja **~35 % de contenido único**. La industria usa entre 60 % y 70 % como piso
  para no caer en páginas puerta; Google no confirmó ningún umbral.
- **Por sección** (similitud media entre ciudades y palabras promedio por página):

  | Sección | Similitud | Palabras |
  |---|---:|---:|
  | `hero` | 92 % | 46 |
  | `outdoorMatch` | 85 % | 151 |
  | `localityIntro` (la introducción "local") | 78 % | 107 |
  | `whyChoose` | 77 % | 179 |
  | `design` | 73 % | 130 |
  | `renovation` | 70 % | 179 |
  | `installation` | 60 % | 205 |
  | `features` | 55 % | 476 |
  | `transform` | 46 % | 223 |
  | `faqs` | 21 % | 630 |
  | `communityDescriptions` (barrios) | 4 % | 220 |

  Lo único de verdad son los barrios y las FAQs. Hasta la introducción de cada ciudad
  es una plantilla con el nombre cambiado.
- **Las fotos:** las 20 páginas usan las mismas 14 fotos de la base. No hay proyectos
  ni testimonios propios de cada ciudad.
- **Escala:** el sitio tiene 220 páginas de ciudad (11 servicios × 20). `/seo-local`
  avisa desde 30 páginas de este tipo y frena desde 50.

**H3. Imágenes: 5,2 MB por página, todas en JPG de 1280 px.**

Medición con Playwright sobre la página base:

| | Desktop 1440 | Tablet 768 | Mobile 390 |
|---|---:|---:|---:|
| Peso de imágenes | 5.255 KB | 5.255 KB | 5.255 KB |
| LCP de laboratorio | 1.240 ms | 968 ms | 968 ms |
| CLS | **0,076** | 0,014 | 0,016 |

- **Formato:** 20 JPG (19 de 1280×960 y uno de 1280×720), sin `srcset` ni AVIF/WebP. La
  única imagen en AVIF es el mapa, que ya pasa por `<x-responsive-image>` desde la home.
- **Tamaño pintado:** las fotos de sección se pintan entre 167 y 440 px de ancho, o
  sea que se bajan entre 3 y 7 veces más píxeles de los necesarios.
- **Hero (es el LCP):** la misma foto de 1280×960 se pinta a 1440×540 en desktop (el
  navegador la agranda) y a 390×506 en mobile (baja la foto entera para mostrar un
  recorte).
- **Por qué pasa:** ninguno de los componentes del layout de servicio usa
  `<x-responsive-image>`. Es la deuda "alta" que dejó registrada el
  [plan de la home](../home/plan.md#t42-chore--componente-compartido-de-imagen-responsive).
- **Las 20 ciudades:** cargan las mismas fotos, así que tienen el mismo problema.
- **CLS en desktop:** 0,076 está dentro de "bueno" (≤ 0,1), pero es el triple que en
  la home. No se investigó la causa.

### Media

**H4. Titles de 75 a 83 caracteres en las 21 páginas.**

- **Base:** `Paver Driveway Installation Palm Beach & Broward | Patios Pools Driveways Inc.`
  (78). Sale de `serviceCopy()` en `app/Services/PageSeoService.php`: `titlePhrase` más
  `' | '` y el nombre legal.
- **Ciudades:** `Paver Driveway Installation in <Ciudad>, FL | Patios Pools Driveways Inc.`
  (75 a 83). Sale de `localityPage()`, el mismo template para las 220 páginas de ciudad.
- **El sufijo es el problema:** el nombre legal suma 30 caracteres. La home ya pasó a
  `PPD Inc.` (`config('company.short_name')`).
- **El H1 está bien** ("Paver Driveway Installation in Palm Beach & Broward County") y
  la description de la base tiene 151 caracteres.

**H5. Fort Lauderdale tiene demanda y no tiene página.**

Es la búsqueda con más impresiones de la vertical ("marble driveways fort lauderdale fl",
23), y suma 31 con "paver driveways fort lauderdale" y "driveway pavers fort lauderdale".
Fort Lauderdale **no está en el área de servicio** (`config('company.service_areas')`):
Google muestra la página base porque no hay otra mejor.

**H6. Nombre, dirección y teléfono: bien en el sitio, ausentes en los directorios.**

| Fuente | Estado |
|---|---|
| HTML y schema `LocalBusiness` | ✓ Coinciden: Patios Pools Driveways Inc. · 3300 S Congress Ave. Suite 4, Boynton Beach, FL 33426 · (561) 488-5003. El (561) 726-1261 del navegador es CallRail: intencional |
| atly.com | ✓ Coincide |
| BuildZoom | ⚠ Dirección en **West Palm Beach** (según el resultado de búsqueda; la página bloquea el acceso). Licencia activa y ~73 permisos en 3 años |
| BBB, Thumbtack, Nextdoor, Angi, Houzz | ✗ No se encontraron |
| Yelp | ? No se encontró; la señal de 1,7★ está sin verificar |
| Facebook | ✓ `facebook.com/PPDBoca`, en el `sameAs` del schema |
| Bing Places, Apple Business Connect, Data Axle, Foursquare | ? No se pueden verificar desde afuera. Bing alimenta a ChatGPT y Copilot |

**H7. Ficha de Business Profile.**

- **Link al sitio:** apunta a `http://patiospoolsanddriveways.com/`. Ya está pedido en
  el [plan de la home](../home/plan.md#fuera-del-código-owner).
- **Categorías:** no se pueden ver desde el sitio. La principal es el factor más
  importante del mapa local; el owner tiene que confirmar cuál es y sumar unas 4 secundarias.
- **Posts, fotos y videos:** no verificables desde el sitio.

### Baja

**H8. Schema incompleto.**

| Falta | Detalle |
|---|---|
| Subtipo específico | La organización es `HomeAndConstructionBusiness`, el genérico. Con licencia CGC, el subtipo exacto es `GeneralContractor` (ya implica `LocalBusiness` y `HomeAndConstructionBusiness`) |
| `areaServed` en el `Service` de la base | `serviceSchema()` solo lo emite en las páginas de ciudad. La base no declara área |
| `geo` | El código ya lo soporta; faltan las coordenadas de la ficha (pendiente desde la home) |
| `priceRange` | No está definido como dato comercial |

Fragmento para el `Service` de la base:

```json
"areaServed": [
  { "@type": "AdministrativeArea", "name": "Palm Beach County, FL" },
  { "@type": "AdministrativeArea", "name": "Broward County, FL" }
]
```

**H9. Autoridad local muy baja.**

- **Encontrado:** un link de theflyer.com (directorio local).
- **No encontrado:** cámara de comercio, acreditación BBB, prensa local, listas
  "best of" ni patrocinios.
- Es el problema de fondo que ya marcaba la home: el sitio se relanzó en 2026, aunque
  el negocio existe desde 2011.

**H10. La base no tiene mapa embebido** (las ciudades sí). No es un factor de
posicionamiento directo; solo refuerza la señal geográfica.

## Lo que está bien (no tocar)

- **On-page:** un solo H1 con servicio y zona; description de 151 caracteres.
- **Links:** la base enlaza a sus 20 ciudades y cada ciudad vuelve a la base.
- **Contacto:** nombre, dirección, teléfono y licencia en el footer; 19 links `tel:`;
  horarios visibles (lunes a viernes de 9 a 5, sábados de 9 a 12).
- **Schema:** la organización ya trae dirección, teléfono, email, horarios, `areaServed`
  con las 20 ciudades, `sameAs`, `hasMap` y `hasOfferCatalog`. La página suma
  `Service`, `BreadcrumbList`, `WebPage` y `FAQPage`.
- **LCP:** entre 0,97 y 1,24 s en laboratorio.
- **Sin fechas:** sin `datePublished`, `dateModified` ni `lastmod`, según la decisión
  del 2026-10-30.

## Limitaciones

Este análisis **no** pudo medir:

- los datos internos de la ficha (búsquedas, llamadas, cómo llegar) ni su categoría principal;
- la posición real en el mapa por zona (geo-grid);
- el perfil completo de backlinks y la autoridad del dominio;
- la nota y la cantidad reales de reseñas: dos fuentes bloquearon el acceso automático (403).

Herramientas que cubren esos huecos: los Insights de la ficha (gratis, desde la cuenta
del owner), DataForSEO (`/seo-maps`, pago) para geo-grid y directorios, y Ahrefs o Moz
para backlinks.

## Fuentes

- [BBB: Patios and Decks, Boynton Beach](https://bbb.org/us/fl/boynton-beach/category/patios-and-decks)
- [atly.com: Patios Pools Driveways Inc](https://www.atly.com/location/PatiosPoolsDrivewaysInc)
- [BuildZoom: patios pools driveways inc](https://www.buildzoom.com/contractor/patios-pools-driveways-inc) (403 al acceder; datos del resultado de búsqueda)
- [d7leadfinder: Patios Pools Driveways](https://d7leadfinder.com/app/prospector/97131/063be1ce47fe78fabb74eeac1488d701/) (403 al acceder; datos sin verificar)
- [Lantern: Hardscaping & Patios, Boca Raton](https://lantern.llc/fl/boca-raton/outdoor-lawn/hardscaping) (referencia de la competencia)
- [Corcoran: 3300 S Congress Ave #4](https://corcoran.com/listing/sold/3300-s-congress-avenue-4-boynton-beach-fl-33426/vow/75186292/regionId/2)
