Bots de SWPanel

SWPanelBot-SEO

Recorre la web como lo haría un buscador para el informe y el seguimiento SEO: títulos, descripciones, encabezados, enlaces, códigos de respuesta, canonical, hreflang y datos estructurados.

User-Agent Mozilla/5.0 (compatible; SWPanelBot-SEO/1.1; +https://www.swpanel.com/bots/seo)

Función: Informes y seguimiento SEO Operador: DeepThink Software SLU Contacto: [email protected] Versión: 1.1 Revisado el: 17 de octubre de 2026

Ficha técnica

Todo lo que hace SWPanelBot-SEO

Sacado del código del módulo. Si el bot cambia lo que hace, cambia esta ficha y su versión.

Identidad

Nombre
SWPanelBot-SEO. También es su nombre para robots.txt.
Familia
SWPanelBot: el nombre común de todos los bots de SWPanel.
Versión
1.1, la que va en el User-Agent. Los cambios de cada versión están más abajo.
Tipo
Directo: lo ejecuta y lo controla SWPanel, siempre por encargo del propietario del servicio.
Categoría
SEO
Operador
DeepThink Software SLU, titular de SWPanel. Información legal.
Contacto
[email protected]
Nombres anteriores
SWPanel/SEOAnalyzer/1.0 SWPanelSEO/1.0 SWPanel/SEOAnalyzer/1.0; headless

Cuándo y cuánto

Cuándo entra
Programado, en las webs con el módulo SEO activo, y cada vez que el propietario pide un informe. Un usuario de SWPanel también puede pedir a mano el informe de una web que no está en SWPanel: entonces pasa una sola vez.
Frecuencia
Una pasada cada 30 días en el plan Básico y cada 7 días en Profesional y Premium, más los informes que se piden a mano.
Horario
Las pasadas programadas salen del proceso nocturno de SWPanel. Los informes a mano, cuando el propietario los pide.
Por pasada
Hasta 10, 100 o 200 páginas según el plan, a 5 clics de la portada como mucho, más robots.txt y el sitemap. La pasada se corta a los 15 minutos aunque queden páginas.
Al mes
Como mucho unas 12, 440 o 870 peticiones según el plan, sin contar los informes que se piden a mano.
En paralelo
Nunca. Una petición cada vez a cada web.

Cómo pide

Qué pide
La portada, /robots.txt, el sitemap que declara robots.txt (o /sitemap.xml) y páginas HTML del mismo dominio que encuentra siguiendo enlaces. Para el informe, además, una captura de la portada con un navegador sin ventana, que hoy llega con el nombre SWPanelBot-Code.
Métodos
Solo GET.
Redirecciones
Las sigue, para saber adónde lleva cada enlace.
Certificado
No corta la visita por un problema de certificado.
Cookies
No guarda ni envía cookies.
JavaScript
No lo ejecuta: lee el HTML tal como lo sirve el servidor. La captura del informe sí usa un navegador.
Esperas
Hasta 12 segundos para conectar y 20 para la respuesta en cada página; en robots.txt, 10 y 15.
Reintentos
Ninguno. Si una página falla, la anota y sigue con la siguiente.
Origen
En preparación Desde los servidores de SWPanel. Estamos reservando unas IP de salida solo para los bots; cuando estén, las publicaremos aquí en un fichero JSON.
DNS inverso
En preparación Cada IP tendrá un nombre bajo bots.swpanel.com que vuelva a la misma IP.

Normas que aplica

A qué webs va
Cumple Solo visita webs de servicios activos de SWPanel y deja de pasar en cuanto el servicio se da de baja: lo comprueba antes de cada petición. La única excepción es el informe que un usuario pide a mano, que puede ser de una web que no está en SWPanel. También en ese caso respeta robots.txt.
robots.txt
Cumple Lo pide con su nombre y lo guarda 24 horas como mucho. Busca primero el grupo SWPanelBot-SEO y, si no lo hay, el grupo SWPanelBot, y si tampoco, el grupo *, como manda RFC 9309. Si robots.txt da 404, entiende que puede rastrearlo todo; si da un error 5xx o no contesta, no rastrea.
Crawl-delay
Cumple Respeta el Crawl-delay del grupo SWPanelBot-SEO o, si no lo hay, del grupo SWPanelBot: espera lo que pida entre dos páginas de la misma web. Si pide más de 60 segundos, mira una página y deja la web hasta la próxima pasada; si las esperas de una pasada suman más de 2 minutos, también.
Si la web pide frenar
Cumple Con 429 o 503 espera lo que diga Retry-After si son 60 segundos o menos (10 si no lo dice). Si pide más, deja la web hasta la próxima pasada. Tras 3 errores 5xx seguidos, también la deja.
Caché HTTP
Cumple Pide con If-None-Match e If-Modified-Since. Si la página no ha cambiado (304), no la vuelve a descargar y usa la copia que ya tiene.
Firma
Cumple Firma cada petición con Web Bot Auth (RFC 9421, Ed25519): cabeceras Signature, Signature-Input y Signature-Agent. La clave pública está en https://www.swpanel.com/.well-known/http-message-signatures-directory.
Contacto en la petición
Cumple Lleva From: [email protected], como pide RFC 9110 a los clientes automáticos.

Qué hace con los datos

Qué lee
Títulos, descripciones, encabezados, enlaces, códigos de respuesta, canonical, hreflang, datos estructurados, número de palabras y peso de cada página.
Qué guarda
Las métricas de cada página y la lista de problemas, en el SWPanel del propietario.
Cuánto tiempo
Los problemas, unos 30 días. Las métricas no tienen fecha de borrado: sirven para ver la evolución.
Para qué
Solo para el informe y el seguimiento SEO del propietario del servicio. Algunos informes usan IA para redactar las conclusiones con estos datos. No se usan para entrenar modelos de IA, ni se venden ni se ceden.
Privacidad
Política general de privacidad de SWPanel.

El informe también pide datos a servicios de terceros, que visitan la web con su propio nombre: PageSpeed Insights de Google mide la portada en el plan Premium y el validador del W3C revisa el HTML. Esas visitas no son SWPanelBot.

Cómo funciona

Una pasada, paso a paso

  1. Elige las webs

    Cada noche, el proceso SEO toma las webs de servicios activos a las que les toca pasada según su plan: primero los planes más altos y, dentro de cada uno, las que llevan más tiempo sin revisar.

  2. Lee robots.txt

    Pide /robots.txt para analizarlo, encontrar el sitemap y saber qué puede rastrear. Antes de cada página comprueba que robots.txt la deja y que el servicio sigue activo.

  3. Arma la lista

    Empieza por la portada y por las páginas con más impresiones en Google Search Console, si el propietario la ha conectado, y añade las del sitemap.

  4. Recorre la web

    Pide una página cada vez y sigue los enlaces internos hasta 5 clics desde la portada, sin salir del dominio. Si la web contesta 429 o 503, frena.

  5. Para a tiempo

    Al llegar al tope de páginas de su plan o a los 15 minutos, lo que llegue antes. Lo que no le da tiempo a ver, lo ve en la pasada siguiente.

  6. Deja el informe

    Calcula los problemas, como títulos que faltan o se repiten, páginas sin H1, contenido escaso o errores 4xx y 5xx, y los deja en el SWPanel del propietario.

En tus logs

Así se ve SWPanelBot-SEO

Un ejemplo en formato combinado de Apache y Nginx. La IP y el dominio son de documentación: los tuyos serán otros.

203.0.113.10 - - [17/Oct/2026:03:12:04 +0200] "GET /robots.txt HTTP/1.1" 200 412 "-" "Mozilla/5.0 (compatible; SWPanelBot-SEO/1.1; +https://www.swpanel.com/bots/seo)" 203.0.113.10 - - [17/Oct/2026:03:12:05 +0200] "GET /sitemap.xml HTTP/1.1" 200 2290 "-" "Mozilla/5.0 (compatible; SWPanelBot-SEO/1.1; +https://www.swpanel.com/bots/seo)" 203.0.113.10 - - [17/Oct/2026:03:12:06 +0200] "GET / HTTP/1.1" 200 48211 "-" "Mozilla/5.0 (compatible; SWPanelBot-SEO/1.1; +https://www.swpanel.com/bots/seo)" 203.0.113.10 - - [17/Oct/2026:03:12:08 +0200] "GET /servicios/ HTTP/1.1" 200 30554 "-" "Mozilla/5.0 (compatible; SWPanelBot-SEO/1.1; +https://www.swpanel.com/bots/seo)" 203.0.113.10 - - [17/Oct/2026:03:12:09 +0200] "GET /contacto/ HTTP/1.1" 304 0 "-" "Mozilla/5.0 (compatible; SWPanelBot-SEO/1.1; +https://www.swpanel.com/bots/seo)"

Una sola IP, páginas del mismo dominio y una detrás de otra. La respuesta 304 es la caché HTTP: la página no había cambiado.

Comprobar

¿Es de verdad SWPanelBot-SEO?

Un User-Agent se puede copiar. Por eso hay que mirarlo junto con lo demás. Los ejemplos usan una IP de documentación.

DNS inverso En preparación

$ host 203.0.113.10 10.113.0.203.in-addr.arpa domain name pointer crawl-203-0-113-10.bots.swpanel.com. $ host crawl-203-0-113-10.bots.swpanel.com crawl-203-0-113-10.bots.swpanel.com has address 203.0.113.10

La IP tiene que resolver a un nombre de bots.swpanel.com, y ese nombre a la misma IP. Si solo se cumple la primera parte, no es nuestro.

Lista de IP En preparación

$ curl -s https://www.swpanel.com/bots/ips.asp {"formatVersion": "1.0", "creationTime": "…", "prefixes": [{"ipv4Prefix": "203.0.113.0/28", "service": "SWPanelBot"}]}

Un fichero JSON con el formato JAFAR que propone el IETF, enlazado desde esta página.

Firma de la petición Disponible

Signature-Agent: "https://www.swpanel.com" Signature-Input: sig1=("@authority" "signature-agent"); created=1792224000;expires=1792224300; keyid="…";alg="ed25519";tag="web-bot-auth" Signature: sig1=:…:

Cabeceras de Web Bot Auth. La clave pública está en /.well-known/http-message-signatures-directory de www.swpanel.com: con ella, cualquier cortafuegos que entienda Web Bot Auth comprueba que la petición es nuestra.

Lo que pide Disponible

Compara lo que ves con la ficha: las rutas, la frecuencia y el volumen. Un bot que se llama SWPanelBot-SEO y hace otra cosa no es nuestro.

Si dudas de una visita, escríbenos a [email protected] con el dominio, la hora con su zona horaria, la IP y la línea del log, y lo comprobamos.

Pararlo

Lo pide el propietario. Él lo apaga.

Nuestros bots solo visitan webs de servicios activos de SWPanel, solo para las funciones que su propietario tiene activas, y dejan de pasar en cuanto el servicio se da de baja.

Si eres el propietario

Desactiva el módulo SEO del servicio en tu SWPanel: dejan de pasar el seguimiento y los informes.

Si no lo eres

Si el dominio ya no está en SWPanel no debería llegarte ninguna visita programada. Si te llega, escríbenos a [email protected] y lo paramos.

En el cortafuegos

Para dejarlo pasar, usa el nombre junto con la IP o la firma, no solo el nombre. Cuidado con las reglas genéricas: un patrón como «bot» también alcanza a SWPanelBot.

Si lo bloqueas

El informe y el seguimiento SEO saldrán vacíos.

Con robots.txt Cumple

# Que SWPanelBot-SEO no entre en la zona privada User-agent: SWPanelBot-SEO Disallow: /privado/ Crawl-delay: 5 # O para todos los bots de SWPanel que leen robots.txt User-agent: SWPanelBot Disallow: /tmp/ # Si cierras la web a todos con «User-agent: *» y «Disallow: /» # pero quieres el informe SEO, ábrela solo a SWPanelBot-SEO User-agent: SWPanelBot-SEO Allow: /

Los cambios se notan en la pasada siguiente: guarda robots.txt 24 horas como mucho.

Normas

Lo que piden los estándares, y cómo está SWPanelBot-SEO

Nuestra situación en cada punto, sin adornos.

Lo que piden los estándares, y cómo está SWPanelBot-SEO
Un nombre propio en el User-Agent, con la dirección de su página RFC 9110, 10.1.5, y borrador IETF «Crawler best practices», 2.2 Cumple
Un nombre válido para robots.txt: letras, guiones y guion bajo RFC 9309, 2.2.1 Cumple
Visitar solo webs de servicios activos de SWPanel, y dejar de hacerlo en cuanto el servicio se da de baja Compromiso propio de SWPanel. Excepto el informe que un usuario pide a mano. Cumple
Leer y respetar robots.txt RFC 9309 y «Crawler best practices», 2.1. El borrador permite la exención documentada de los rastreadores que trabajan por encargo. Cumple
Respetar Crawl-delay Fuera de RFC 9309, pero Bing lo aplica y Cloudflare lo pide a los bots verificados Cumple
No entorpecer la web: una petición cada vez, límites de páginas y de tiempo, y esperas cortas «Crawler best practices», 2.3 Cumple
Frenar si la web contesta 429 o 503 «Crawler best practices», 2.3, y RFC 9110, 15.6 Cumple
Respetar la caché HTTP «Crawler best practices», 2.4, y RFC 9111 Cumple
Un contacto en la petición: cabecera From RFC 9110, 10.1.2 Cumple
Publicar las IP de salida en JSON, enlazadas desde esta página «Crawler best practices», 2.5, con el formato JAFAR En preparación
DNS inverso que se pueda confirmar Práctica de Google, Bing y Cloudflare para verificar bots En preparación
Firmar las peticiones (Web Bot Auth) Borrador IETF «HTTP Message Signatures for Bots», septiembre de 2026 Cumple
Página pública con qué hace, qué guarda, contacto, cómo pararlo y las exenciones «Crawler best practices», 2.6 Cumple

En parte: cumple con una salvedad, que se explica en la fila. En preparación: depende de la red, como las IP propias y su DNS inverso. Pendiente: aún sin fecha.

Versiones

Qué ha cambiado

La versión va en el User-Agent. Cuando el bot cambia lo que hace, cambian la versión y esta ficha.

Qué ha cambiado
1.0 12-10-2026 Nombre nuevo, SWPanelBot-SEO, con el enlace a la página de los bots. Sustituye a SWPanel/SEOAnalyzer y SWPanelSEO.
1.1 17-10-2026 Enlaza a esta ficha. Aplica robots.txt y Crawl-delay, frena con 429 y 503, usa la caché HTTP, firma las peticiones, lleva la cabecera From y solo visita servicios activos.
Próxima Sin fecha El grupo * de robots.txt.

Preguntas frecuentes

Dudas sobre SWPanelBot-SEO

Sí. Sigue el grupo SWPanelBot-SEO, después SWPanelBot y, si no hay ninguno de los dos, el grupo *.

Sí, con Crawl-delay en el grupo SWPanelBot-SEO o SWPanelBot de tu robots.txt: espera esos segundos entre página y página. Con más de 60, mira una sola página por pasada. También frena si la web contesta 429 o 503.

El rastreo programado, nunca: solo va a servicios activos y deja de pasar en cuanto se dan de baja. Un usuario sí puede pedir a mano un informe de cualquier web; en ese caso pasa una vez y respeta robots.txt.

Porque también parte del sitemap y de las páginas con más impresiones en Google Search Console, si el propietario la ha conectado.

El rastreo no: no ejecuta JavaScript, así que no aparece en Google Analytics ni en herramientas parecidas. Solo se ve en los logs del servidor. La captura de la portada del informe sí usa un navegador y puede contar como una visita.