SaaS de nutrición personalizada por IA · Next.js 14 · Mercado ES + LATAM
/blog/* — 47 artículos no indexablesstaging.nutrihabit.es (entorno de pruebas)⚠️ Abril: fecha de migración a Next.js 14. Caída del 43% en 2 meses.
| Hallazgo | Impacto | Evidencia | Fix |
|---|---|---|---|
| robots.txt bloquea /blog/* | CRÍTICO |
Disallow: /blog/
47 artículos fuera del índice
|
Eliminar la línea Disallow /blog/. Añadir Allow: /blog/ explícito. |
| Canonical → staging.nutrihabit.es | CRÍTICO |
<link rel="canonical" href="https://staging.nutrihabit.es/blog/...">
GSC reporta 73 URLs con canonical externo
|
En next.config.js: definir siteUrl: 'https://nutrihabit.es'. Re-generar todas las páginas. |
| ~91 URLs sin redirect (404) | CRÍTICO | Screaming Frog: 91 URLs del sitemap antiguo devuelven 404. Link equity perdido. | Exportar URLs del sitemap WP + GSC → crear tabla de redirects 301 en next.config.js redirects[] |
| Sitemap XML desactualizado | ALTO | sitemap.xml lista 89 URLs vs 180 páginas reales. Última modificación: hace 57 días. | Usar next-sitemap con auto-generación en build. Someter nuevo sitemap a GSC. |
| Páginas de área privada indexables | ALTO | /dashboard/*, /perfil/*, /plan/* aparecen en el sitemap y no tienen noindex. | Añadir robots: "noindex, nofollow" en el layout de rutas privadas. |
| Cadenas de redirección /blog → /articulos → /blog | MEDIO | Bucle detectado: 3-4 saltos en 12 URLs. Pérdida de PageRank en cada salto. | Mapear rutas definitivas y collapsar a redirect directo 301 en un solo salto. |
| Hallazgo | Impacto | Evidencia | Fix |
|---|---|---|---|
| Imagen hero no optimizada (LCP) | ALTO | hero.png, 1.2 MB, formato PNG, sin preload. LCP element en mobile. | Convertir a WebP (≤120KB). Usar <Image> de Next.js con priority={true}. Añadir preload en <head>. |
| Fuentes Google cargadas sin display:swap | MEDIO | Inter cargada sin font-display:swap. Bloquea render hasta 400ms. | Usar next/font/google con subsets: ['latin'] y display: 'swap'. Hostear self-hosted. |
| Bundle JS excesivo (~890KB inicial) | ALTO | PageSpeed: JS parse/execute 1.2s. Librerías de charts cargadas en SSR. | Dynamic imports para Recharts/D3. Code splitting por ruta. Analizar con next build --analyze. |
| TTFB 820ms (servidor) | MEDIO | Sin CDN activo. Hosting en EU (Frankfurt) sin edge caching para LATAM. | Activar Vercel Edge Network o Cloudflare CDN. Habilitar ISR para páginas de blog. |
| INP elevado (230ms) | MEDIO | Event handlers síncronos en el formulario de registro. Long tasks >200ms. | Debounce en inputs. Defer validaciones pesadas. Usar startTransition para actualizaciones de UI. |
| Hallazgo | Impacto | Evidencia | Fix |
|---|---|---|---|
| 60% meta descriptions duplicadas/ausentes | ALTO | Screaming Frog: 54 páginas con meta description idéntica (la del home). 17 páginas sin meta description. | Generar meta descriptions únicas con keyword + propuesta de valor por página. Mínimo 150 caracteres. |
| Title tags truncados en mobile (>60 chars) | MEDIO | 28 páginas con titles de 68-82 caracteres. Se truncan en SERP con puntos suspensivos. | Reformular titles: keyword principal primero, ≤58 caracteres. Ej: "Plan Alimentación IA | NutriHabit" |
| Landing /dieta-ia sin H1 con keyword | ALTO | H1 actual: "Tu camino hacia una vida más saludable". Keyword "dieta con IA" ausente del H1 y primeras 100 palabras. | H1: "Tu Dieta con IA Personalizada en 3 Minutos". Incluir keyword en primer párrafo. |
| Sin estructura de clústeres en el blog | ALTO | 47 artículos sin interlinking entre sí. Temas dispersos: 0 pillar pages detectadas. | Crear 4 pillar pages (macros, dietas, IA nutricional, recetas). Reorganizar artículos como cluster content enlazados entre sí y a la pillar. |
| Imágenes sin alt text (38% del total) | MEDIO | Screaming Frog: 142 imágenes sin atributo alt. Principalmente en posts de blog. | Añadir alt descriptivo con keyword contextual. Script de auditoría para detectar vacíos. Prioridad: imágenes en artículos top 10 de tráfico. |
| Canonicalización trailing slash inconsistente | MEDIO | nutrihabit.es/blog/recetas y nutrihabit.es/blog/recetas/ devuelven 200 sin redirect. Contenido duplicado. | En next.config.js: trailingSlash: false (o true, elegir uno). Añadir redirect para normalizar todas las URLs. |
| Dimensión | Estado | Hallazgo | Recomendación |
|---|---|---|---|
| Experience | BUENO | Los artículos incluyen ejemplos de planes reales generados por la IA. Datos originales de la plataforma. | Añadir casos de usuario (anonimizados) con resultados medibles. Incluir screenshots del producto en artículos. |
| Expertise | MEJORAR | Sin byline de autor en 41 de 47 artículos. Sin credenciales visibles (nutricionistas revisores). | Añadir author box con foto, título y perfil de LinkedIn. Declarar revisión por nutricionista certificado (RD/DN). Crear página /sobre-nutrihabit con equipo. |
| Authoritativeness | MEJORAR | 0 backlinks de medios de salud. Ahrefs DR: 14. Competidores top tienen DR 40-65. | Link building editorial: colaboraciones con blogs de nutrición ES. Guest posts en Vitónica, Sportlife. Datos propios citables. |
| Trustworthiness | BUENO | HTTPS activo, política de privacidad presente, contacto visible. Sin mixed content. | Añadir aviso legal específico para recomendaciones nutricionales (disclaimer médico). Incluir sellos de pago y certificaciones. |
| Schema Markup | FALTA | Solo Organization schema en home. Sin Article, FAQPage, BreadcrumbList ni SoftwareApplication schema. | Implementar: Article en posts, FAQPage en landings, BreadcrumbList en todas, SoftwareApplication para la app (Rating agregado). |
| Keyword | Pos. NutriHabit | Pos. #1 Competidor | Gap principal |
|---|---|---|---|
| plan de alimentación personalizado Vol: 8.100/mes |
#47 | #1 — myfitnesspal.es | Contenido 3.200 palabras vs. 780 de NutriHabit. Sin FAQ section ni comparison table. |
| dieta con IA Vol: 2.400/mes |
#18 | #1 — dietadoctor.es | NutriHabit tiene landing pero sin schema SoftwareApp ni reviews verificadas (0 estrellas en SERP). |
| contador de macros Vol: 12.100/mes |
No rankea | #1 — calculadoraonline.es | NutriHabit tiene la herramienta en app privada. Crear versión pública embebible sería una oportunidad directa. |
| nutricionista online gratis Vol: 6.600/mes |
#62 | #1 — mundodeportivo.com | Intent: comparativa + listado de opciones. NutriHabit necesita un artículo de "mejores herramientas" donde se posiciona como opción #1. |