Google Search Console suele marcar errores de soft 404 en sitios de Next.js, lo que puede desperdiciar el presupuesto de rastreo.
Qué es realmente un soft 404
Una respuesta 404 real envía un código de estado HTTP 404, indicando a los navegadores y bots que el recurso solicitado no existe. Un soft 404, por el contrario, devuelve un estado 200 OK mientras entrega poco o ningún contenido. Los motores de búsqueda leen el 200 como una página saludable, pero la página no aporta ningún valor. El resultado es el desperdicio de ciclos de rastreo y una señal para Google de que la calidad del contenido del sitio es baja.
Por qué Next.js cae en la trampa
El enrutamiento dinámico de Next.js te permite servir páginas como /products/[slug] sin tener que codificar cada URL manualmente. Cuando un producto desaparece de la base de datos, el componente se sigue renderizando y, si el código no comprueba si faltan datos, Next.js responde con un 200 OK por defecto. Lo mismo ocurre cuando un usuario escribe mal una URL o cuando quedan rutas antiguas tras un rediseño. La página se carga, pero no ofrece contenido significativo, lo que activa la alerta de soft 404 en Search Console.
Lo que está en juego para los propietarios de sitios
- Desperdicio del presupuesto de rastreo – Los bots asignan un número limitado de solicitudes por sitio. Los soft 404 consumen esa cuota, dejando menos oportunidades para que las páginas reales sean indexadas.
- Penalización de SEO – Los soft 404 repetidos indican a los motores de búsqueda que el sitio es de baja calidad.
- Impacto en la experiencia del usuario – Los visitantes que llegan a una página vacía se van de inmediato, lo que infla las tasas de rebote y perjudica las conversiones.
Cómo convertir un soft 404 en un 404 adecuado
1. Utiliza el helper notFound integrado
- App Router – Importa
notFounddenext/navigation. Después de obtener los datos, llama anotFound()si el resultado está ausente. Next.js enviará entonces un estado 404 real. - Pages Router – Devuelve
{ notFound: true }desdegetStaticPropsogetServerSidePropscuando la obtención de datos falle. Eso hace lo mismo para la API de enrutamiento más antigua.
2. Implementa una página 404 personalizada
La página de error por defecto deja a los usuarios desorientados. Crea app/not-found.js (App Router) o pages/404.js (Pages Router) con enlaces de navegación, un cuadro de búsqueda o sugerencias de contenido relacionado. Un 404 bien diseñado mantiene a los visitantes en el sitio en lugar de enviarlos directamente a la salida.
3. Limpia las rutas huérfanas
Elimina las páginas estáticas que ya no cumplen ninguna función. Si un archivo permanece pero su contenido está vacío, añade una respuesta notFound o elimina el archivo por completo. Realizar auditorías periódicas de los directorios pages o app evita que se filtren URLs muertas.
4. Configura redirecciones permanentes (301) para contenido movido
Cuando la URL de una página cambia, una redirección 301 indica a los navegadores y bots que el recurso se ha movido permanentemente. Añade redirecciones en next.config.js bajo la clave redirects. Esto evita que la URL antigua devuelva un 200 sin contenido.
5. Monitoriza y actúa ante las alertas de Search Console
Consulta Google Search Console con frecuencia para detectar soft 404. Utiliza un rastreador automatizado para identificar nuevos errores antes de que se acumulen. Trata cada alerta como una señal para verificar la lógica de obtención de datos subyacente.
Conclusión
Una página que devuelve un 200 OK sin entregar contenido drena silenciosamente el valor de SEO. En Next.js, las rutas dinámicas y las consultas de datos no verificadas hacen que los soft 404 sean comunes, pero puedes eliminarlos. Utiliza notFound, crea un 404 personalizado que sea útil, poda las rutas huérfanas, configura redirecciones 301 y mantente vigilante en Search Console para proteger el presupuesto de rastreo, preservar el posicionamiento y mantener a los visitantes en el sitio.
