Files
MNQ-Catering-y-Evento/docs/seo-audit/mnqcatering.com-audit/FULL-AUDIT-REPORT.md
T
manuyasm87 b084aeff6e fix(seo): exclude noindex aviso-legal page from sitemap; add full audit report
Sitemap filter was excluding cookies/ and privacidad/ but not
aviso-legal/, even though that page is marked noindex,follow -- a
noindexed page has no business being listed for crawl discovery.

Also adds docs/seo-audit/mnqcatering.com-audit/ -- the full multi-agent
SEO audit run this session against the corrected live domain
(www.mnqeventos.es), including the FULL-AUDIT-REPORT.md, ACTION-PLAN.md,
and per-category findings files.
2026-09-15 10:19:00 +02:00

82 lines
5.0 KiB
Markdown

# Auditoría SEO completa — MNQ Catering y Evento
Fecha: 2026-09-15
Sitio auditado: **https://www.mnqeventos.es** (dominio real y registrado)
## ⚠️ Nota metodológica crítica
Esta auditoría arrancó apuntando a `mnqcatering.com` porque es el dominio que
usa todo el código fuente (`astro.config.mjs`, schema, footer, etc.) y los
últimos commits del repo. A mitad de auditoría se confirmó — vía `dig`,
`whois` y `curl`/WebFetch independientes — que **`mnqcatering.com` nunca fue
registrado**: WHOIS devuelve "No match", no tiene NS, no resuelve. El dominio
real, registrado y sirviendo tráfico ahora mismo es **`www.mnqeventos.es`**.
Se corrigió el rumbo a mitad de auditoría: cada especialista fue re-dirigido
contra `www.mnqeventos.es`. El código del repo ya fue corregido en el commit
`a6692b7` (dominio canónico + un bug real de schema.org encontrado en la
auditoría), **pero ese fix todavía no está desplegado en producción** — el
sitio en vivo sigue sirviendo el build viejo, con todas las referencias
internas (canonical, OG, JSON-LD, sitemap, robots.txt) apuntando al dominio
muerto.
**Esto es, en sí mismo, el hallazgo más severo de toda la auditoría**: hasta
que se despliegue, cada motor de búsqueda y cada IA que respete la
canonicalización va a asociar el contenido con una URL que no existe.
## Resumen ejecutivo
**SEO Health Score: ~52/100 (estado actualmente en vivo)**
Este número reflejaría **~65-70/100 solo con desplegar** el fix ya
commiteado (dominio + schema), sin escribir una línea de código nueva. El
resto (contenido, precios, GBP) sí requiere trabajo adicional.
| Categoría | Score | Nota |
|---|---|---|
| Técnico | 58/100 | Bueno en fuente; roto en vivo por el dominio no desplegado |
| Contenido | 32/100 | Contenido "thin", cero cifras concretas (precio/capacidad) |
| Schema / structured data | 62/100 (medido antes del fix) | `@type` inválido corregido hoy, pendiente de deploy |
| Sitemap | 25/100 (en vivo) → ~75 post-deploy | Cadena de sitemap 100% rota en vivo por el dominio |
| Performance (Lighthouse real) | ~78-84/100 | Bueno, con un LCP evitable por CSS de animación |
| Visual/mobile | No verificable | Limitación de red del sandbox, no defecto del sitio |
| AEO / GEO (IA) | 46/100 | Permisivo con AI crawlers, pero sin señales de marca |
| SEO local | 22/100 (en vivo) | Sin dirección/ciudad visible en el sitio en vivo hoy |
| SXO (experiencia de búsqueda) | 59/100 | Estructura de página correcta, sin ancla de precio/zona |
### Top 5 críticos
1. **El fix de dominio ya commiteado no está desplegado** — deploy pendiente, cero código nuevo necesario.
2. **Cero mención de "Málaga" o de la dirección en el sitio en vivo** — ni en texto ni en schema.
3. **Cero cifras de precio/capacidad/antelación** en ninguna página — el bloqueador #1 de conversión y de citabilidad por IA.
4. `@type: "CateringService"` no es un tipo válido de schema.org — corregido hoy a `CateringBusiness`, pendiente de deploy.
5. El sitemap y el robots.txt en vivo apuntan a `sitemap-0.xml` del dominio muerto — cadena de descubrimiento rota.
### Top 5 quick wins (una vez desplegado)
1. Deploy del commit `a6692b7` — resuelve dominio, schema, sitemap, robots.txt, OG de un saque.
2. Agregar "Málaga" + rango de precio "desde X€" en homepage y páginas de servicio (bloqueado solo por falta de esos datos reales, no de código).
3. Quitar el `<link rel="stylesheet">` duplicado de Google Fonts que re-bloquea el render (regresión de un fix anterior).
4. Excluir `/aviso-legal/` del sitemap (ya está `noindex` pero sigue listada).
5. Unificar "MNQ Catering y Evento" vs "y Eventos" (inconsistencia de nombre de marca en header/footer vs. resto del sitio).
## Detalle por categoría
Cada archivo tiene evidencia completa (curl/dig/whois, snippets, tablas de severidad):
- [`findings/technical.md`](findings/technical.md) — robots, sitemap, canonicals, headers de seguridad, TLS
- [`findings/content.md`](findings/content.md) — E-E-A-T, thin content, citabilidad IA
- [`findings/schema.md`](findings/schema.md) — JSON-LD, tipo inválido corregido, recomendaciones
- [`findings/sitemap.md`](findings/sitemap.md) — estructura, aviso-legal, trailing slash
- [`findings/performance.md`](findings/performance.md) — Lighthouse real, LCP, CSS duplicado
- [`findings/visual.md`](findings/visual.md) — bloqueado por limitación de red del sandbox
- [`findings/geo.md`](findings/geo.md) — AEO/GEO, llms.txt, AI crawlers
- [`findings/local.md`](findings/local.md) — NAP, GBP (pendiente, reconocido), schema local
- [`findings/sxo.md`](findings/sxo.md) — SERP real, personas, page-type match
## Seguridad de headers (hallazgo transversal)
Ninguna respuesta del sitio en vivo trae HSTS, X-Content-Type-Options,
X-Frame-Options, CSP ni Referrer-Policy, y no hay compresión gzip/brotli en
el HTML. Esto es de capa de hosting/reverse-proxy, no de código Astro — hay
que revisarlo donde esté corriendo el servidor (Docker/nixpacks + lo que sea
que haga de proxy delante).