Cómo se calcula el puntaje
El análisis descarga la home, el robots.txt, el sitemap, el llms.txt, las páginas legales, una segunda página interna y una URL inexistente para ver qué devuelve el 404. Después pesa el JavaScript, revisa si los sourcemaps están públicos y lee el texto visible.
Dos ejes, no uno
La pregunta que responde el número es una sola: ¿parece hecha con IA? Por eso las señales están separadas en dos grupos que pesan distinto.
- Autoría (18 señales). Lo que delata que el contenido y la estructura salieron de un generador: rótulos funcionales en cada sección, vocabulario de modelo, placeholders sin completar, la plantilla visual de siempre, restos del scaffold. Este eje puede restar hasta 7,5 puntos.
- Terminado técnico (27 señales). Falta de sitemap, de canonical, de páginas legales, errores de accesibilidad, imágenes sin optimizar. Cosas que también le pasan a una web escrita a mano, así que solo pueden restar 2,5 puntos.
La primera versión sumaba todo junto y el resultado no servía: un HTML artesanal sin sitemap puntuaba igual que una plantilla publicada sin tocar. Separar los ejes arregla eso. Hoy un sitio hecho a mano pero con el SEO abandonado saca alrededor de 7,5, y una landing de plantilla saca entre 5 y 6.
El peso de cada señal
Dentro de cada eje, la penalización depende de la gravedad: baja 1, media 2, alta 4, crítica 6. El puntaje mínimo es 1 y el máximo 10.
Un 10 no significa que la web sea buena: significa que ninguna de estas 45 señales aparece. Un 3 tampoco prueba que se haya usado IA: significa que tiene las marcas que deja generarla y no revisarla después.
Lo que este análisis no puede ver
Todo se mide sobre el HTML servido y los archivos que la página referencia, sin abrir un navegador real. Eso implica límites concretos:
- Si el sitio se pinta entero con JavaScript, el analizador lee lo mismo que Google en la primera pasada: nada. En ese caso se avisa en el informe y las señales de contenido quedan marcadas como no comprobables, en vez de darlas por buenas.
- Los errores de consola se infieren de los recursos que devuelven error, no de la ejecución del JavaScript.
- El contraste de color y el foco visible se revisan sobre el CSS declarado, no sobre los píxeles renderizados.
- El peso del JavaScript se mide ya descomprimido, que es más alto que lo que viaja por la red.
Las 45 señales
Señales de IA
- 1. Etiquetas genéricas arriba de cada sección (media, autoría) — La IA rotula cada bloque con su nombre funcional (Testimonios, Servicios, FAQ). Nadie escribe así una web pensada: el contenido se explica solo.
- 2. Exceso de emojis (media, autoría) — Los emojis usados como viñetas o decorando titulares son la firma visual de los generadores de landings.
- 7. Guiones largos y dobles guiones en el texto (media, autoría) — El uso sistemático de guiones largos y de dobles guiones dentro de las frases es uno de los tics de escritura más reconocibles de los modelos de lenguaje.
- 26. Frases típicas de IA en el texto visible (alta, autoría) — Expresiones como en el panorama digital actual, desbloquea el poder de o sumérgete en son vocabulario de modelo, no de persona.
- 28. Comentarios de generador en el HTML (alta, autoría) — Restos como Generated by, Built with v0 o Created with Lovable quedan en el código y confirman el origen.
- 30. Clases y patrones típicos de generadores (media, autoría) — rounded-2xl más shadow-lg más gradiente violeta a rosa más íconos lucide es la combinación por defecto de los generadores con Tailwind.
- 31. Meta generator de una herramienta de IA (alta, autoría) — El propio HTML declara con qué se hizo: v0, Lovable, Bolt, Framer, Replit, Cursor.
- 45. Restos de plantilla en el footer (baja, autoría) — Un Made with heart, un año de copyright hardcodeado y desactualizado, o el nombre del template sin cambiar, son residuos del scaffold.
Contenido y copy
- 11. Testimonios que parecen inventados (critica, autoría) — Nombres genéricos, cargos vagos, fotos de stock, sin empresa ni resultado medible: el patrón clásico del testimonio generado.
- 27. Placeholders sin completar (critica, autoría) — Lorem ipsum, INSERTAR AQUÍ o Tu titular acá en producción es la prueba directa de que nadie leyó la web publicada.
- 34. Texto genérico sin datos concretos (alta, terminado) — Sin cifras, sin casos, sin nombres propios, sin fechas y sin fuentes, el texto podría pertenecer a cualquier empresa del mundo.
- 35. Falta de E-E-A-T (nadie firma la web) (alta, terminado) — Sin Sobre mí, sin foto real, sin contacto claro y sin redes enlazadas, no hay una persona verificable detrás.
- 43. Imágenes de stock o placeholder (media, autoría) — Unsplash, picsum o placehold.co en producción: las fotos nunca se reemplazaron por material propio.
- 44. Sin datos de contacto reales (alta, terminado) — Sin email, teléfono ni dirección no hay forma de verificar que exista un negocio detrás.
SEO técnico
- 5. Sin H1 o con varios H1 (alta, terminado) — Una jerarquía rota (cero H1, o cinco) indica que nadie pensó la estructura semántica de la página.
- 6. Sin términos ni política de privacidad (alta, terminado) — Un negocio real necesita páginas legales. Su ausencia delata un sitio generado como demo.
- 12. Mismo título en todas las páginas (alta, terminado) — Indica que el title se puso una sola vez en el layout y nadie lo trabajó por página.
- 13. Sin meta description (media, terminado) — Falta el texto que Google muestra en resultados. Es de las primeras cosas que se saltea una generación automática.
- 14. Sin imagen Open Graph (media, terminado) — Sin og:image el link compartido aparece como un rectángulo gris. Nadie que promocione su web en serio deja eso así.
- 15. Datos no estructurados (sin JSON-LD) (media, terminado) — Sin schema.org los buscadores y las IA no pueden entender qué es el sitio ni quién lo firma.
- 16. Sin etiqueta canónica (baja, terminado) — El canonical evita contenido duplicado entre variantes de URL. Nunca aparece en una web generada de una sola pasada.
- 17. Sin llms.txt (baja, terminado) — El llms.txt le dice a los modelos qué es el sitio y qué pueden citar. Su ausencia indica que no se pensó la capa de IA.
- 18. robots.txt bloqueando a las IA (media, terminado) — Bloquear GPTBot, ClaudeBot o PerplexityBot sin querer (viene por defecto en varios templates) deja al sitio fuera de las respuestas de IA.
- 19. Sin sitemap (media, terminado) — Sin sitemap.xml el rastreo depende de la suerte de los enlaces internos.
- 38. Sin schema específico (Organization, FAQ, Article) (baja, terminado) — Tener JSON-LD genérico pero no el schema del tipo de negocio deja rich results sin aprovechar.
- 39. Títulos o descripciones casi idénticos entre páginas (media, terminado) — Páginas que se pisan entre sí en Google: síntoma de contenido replicado en masa.
- 40. Sin política de cookies ni consentimiento (media, terminado) — Si el sitio carga analytics o píxeles y no pide consentimiento, además de ser una señal de descuido es un riesgo legal.
- 42. Sitio de una sola página sin navegación real (media, terminado) — Todos los enlaces apuntan a anclas de la misma página. No hay arquitectura de información ni superficie para posicionar.
Implementación técnica
- 4. Sin favicon (media, terminado) — El favicon es lo primero que se olvida cuando la web se generó y se publicó sin revisar.
- 8. Sin página 404 personalizada (media, terminado) — El 404 por defecto del framework o del hosting muestra que nadie recorrió el sitio más allá de la home.
- 9. View-source vacío (todo renderizado por JS) (alta, autoría) — Un HTML que sólo tiene un div raíz vacío es el patrón exacto del scaffold de SPA sin SSR. Google puede indexarlo mal y los previews sociales quedan vacíos.
- 10. Vite + React para todo el sitio (media, autoría) — Es el stack por defecto que eligen los generadores de código. Para una web de contenido implica peor SEO y más JS del necesario.
- 22. Sourcemaps expuestos en producción (alta, terminado) — Publicar los .map deja el código fuente original accesible a cualquiera. Pasa cuando se sube el build de desarrollo sin configurar nada.
- 23. Errores en el navegador (recursos rotos) (alta, terminado) — Scripts, hojas de estilo o imágenes que devuelven 404 rompen la página en silencio. Nadie que haya abierto la consola los dejaría.
- 32. Dominio genérico de hosting (media, autoría) — Publicar en un subdominio de vercel.app o netlify.app sin dominio propio dice que el proyecto nunca pasó de la demo.
- 33. Llamadas a APIs de IA desde el front (critica, terminado) — Ver api.openai.com o api.anthropic.com dentro del bundle del cliente casi siempre implica una API key expuesta.
Performance
- 24. Bundle de JavaScript gigante (alta, terminado) — Cientos de KB de JS para una web de contenido significa que se importó todo sin criterio.
- 37. Performance pobre (alta, terminado) — HTML pesado, imágenes sin optimizar y respuesta lenta hunden los Core Web Vitals.
Accesibilidad
- 20. Sin atributo de idioma (media, terminado) — Sin lang en la etiqueta html, los lectores de pantalla leen el contenido con la fonética equivocada y Google no sabe a qué mercado apunta.
- 21. Imágenes sin texto alternativo (media, terminado) — El alt se completa cuando alguien revisa la web imagen por imagen. Las generadas lo dejan vacío o directamente no lo ponen.
- 36. Errores de accesibilidad básicos (alta, terminado) — Botones sin nombre accesible, inputs sin label o foco desactivado son fallas que aparecen apenas alguien navega con teclado.
Diseño y estructura
- 3. Abuso de texto en itálica (baja, autoría) — La IA usa itálica para dar énfasis emocional en subtítulos y testimonios. En una web humana la itálica es rara y deliberada.
- 25. Sección de solución en 3 partes (media, autoría) — Tres beneficios, tres pasos, tres planes. La IA siempre resuelve en tríos porque calza en un grid de 3 columnas.
- 29. Estructura visual genérica (alta, autoría) — Hero con gradiente violeta a rosa, grid de 3 cards, Cómo funciona en 3 pasos, pricing de 3 planes, slider de testimonios y footer de 4 columnas: la plantilla que devuelve cualquier generador.
- 41. Sopa de clases utilitarias sin sistema (baja, autoría) — Elementos con 25 clases o más, repetidas literalmente en cada card, muestran que no hay componentes ni tokens: se generó cada bloque por separado.