Skip to content
Back to Blog
xml sitemapsitemap.xmltechnical seogoogle search consolecrawling

Cómo crear un sitemap XML manualmente

Construye un sitemap.xml válido a mano sin plugin: la sintaxis urlset exacta, qué etiquetas lee Google, cómo validarlo y enviarlo a Search Console.

SZ
Founder, Molixa
13 min read
Compartir
Cómo crear un sitemap XML manualmente
Table of contents8 sections

Para crear un mapa del sitio XML manualmente, escribes un archivo sitemap.xml simple que enumere cada URL importante de tu sitio dentro de un elemento <urlset>, lo guardas en la raíz de tu sitio y lo envías en Google Search Console. Sin complementos, sin CMS, sin herramientas de compilación. El archivo es solo texto y, una vez que entiendas las cuatro etiquetas que importan, puedes escribir a mano un mapa del sitio válido en pocos minutos.

Esta guía es para personas con sitios codificados a mano, generadores de sitios estáticos o frameworks donde no tienes un botón de mapa del sitio con un solo clic. Obtendrás la sintaxis exacta, las etiquetas que Google realmente lee (y las que ignora silenciosamente), cómo validar antes de enviar y cuándo un solo archivo ya no es suficiente.

Qué es realmente un Sitemap XML#

Un sitemap XML es una lista legible por máquinas de las URL que deseas que los motores de búsqueda conozcan. No mejora los rankings por sí solo. Lo que hace es ayudar a los rastreadores a descubrir páginas más rápido y entender la estructura de tu sitio, lo cual es más importante para sitios nuevos, sitios grandes y páginas que no están bien enlazadas internamente.

Piensa en él como un índice de contenidos que le entregas a Googlebot. El rastreador aún decide qué indexar, pero has eliminado la excusa de "nunca encontramos esa página". Para sitios pequeños y bien enlazados, Google normalmente encuentra todo de todas formas, pero un sitemap elimina conjeturas y acelera el descubrimiento de contenido nuevo.

Punto clave: un sitemap es una ayuda para el descubrimiento, no una garantía de indexación. Incluir una URL no obliga a Google a indexarla. Una página puede estar en tu sitemap y aun así marcarse como "Rastreada, no indexada" si Google la considera de bajo valor.

El sitemap.xml mínimo válido#

Este es el sitemap más pequeño que pasa la validación. Todo sitemap manual es una variación de este esqueleto.

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://example.com/</loc>
  </url>
  <url>
    <loc>https://example.com/about</loc>
  </url>
  <url>
    <loc>https://example.com/blog/first-post</loc>
  </url>
</urlset>

Tres reglas hacen que esto funcione, y romper cualquiera de ellas suele ser la causa del error "no se pudo leer el sitemap":

  • La declaración XML y el espacio de nombres xmlns en <urlset> son obligatorios. Si omites el espacio de nombres, los analizadores rechazan el archivo.
  • Cada <loc> debe ser una URL absoluta completa que incluya el protocolo (https://), no /about ni example.com/about.
  • El archivo debe estar codificado en UTF-8 y las URL deben escaparse correctamente (más sobre la trampa del ampersand más abajo).

Las cuatro etiquetas del sitemap, ordenadas por importancia para Google#

Esta es la parte que la mayoría de los tutoriales explican mal. El protocolo de sitemap define cuatro etiquetas hijas dentro de cada <url>, pero Google las trata de manera muy diferente en 2026.

EtiquetaSignificado¿Google la usa?
<loc>La URL de la páginaSí. Obligatoria. Este es el objetivo principal.
<lastmod>Fecha de la última modificación significativaSí, si es precisa y honesta.
<changefreq>Frecuencia con la que cambia la páginaNo. Google ha dicho que ignora esto.
<priority>Importancia relativa, de 0.0 a 1.0No. Google también ignora esto.

La documentación de Google confirma que lee <loc> y usa <lastmod> como señal de rastreo, mientras que <changefreq> y <priority> son valores efectivamente muertos. Otros motores pueden tenerlos en cuenta, por lo que incluirlos no hace daño, pero no pierdas tiempo ajustando una prioridad de 0.8 frente a 0.7. No cambia nada para Google.

La única etiqueta que merece tu atención es <lastmod>. Establécelo con una fecha ISO 8601 real, como 2026-06-25 o 2026-06-25T14:30:00+00:00. Es crucial que solo lo actualices cuando el contenido de la página cambie realmente. Si cada URL afirma que se modificó hoy en cada rastreo, Google aprenderá a desconfiar de tus fechas e ignorará la señal por completo.

Cómo crear un sitemap XML manualmente, paso a paso#

Aquí tienes el flujo de trabajo completo hecho a mano, desde un archivo en blanco hasta un sitemap enviado y validado. Saber cómo crear un sitemap XML manualmente significa que nunca dependerás de un plugin que pueda fallar, quedarse atrás o listar URLs que nunca quisiste que se rastrearan.

Paso 1: Lista cada URL que quieras indexar#

Abre una hoja de cálculo o un archivo de texto y escribe la URL canónica de cada página que quieras en los resultados de búsqueda. Incluye tu página de inicio, páginas de aterrizaje clave, entradas de blog y páginas de productos.

Omite deliberadamente cualquier cosa que no quieras que aparezca: páginas de agradecimiento, resultados de búsqueda interna, archivos de etiquetas, duplicados paginados, pantallas de inicio de sesión y cualquier URL que devuelva una etiqueta noindex o un estado no 200. Un sitemap lleno de redirecciones, errores 404 y páginas no indexadas envía señales contradictorias y es la razón más común por la que Search Console reporta advertencias de sitemap.

Paso 2: Envuelve cada URL en la estructura urlset#

Crea un archivo con el nombre exacto sitemap.xml. Añade la declaración XML y la etiqueta de apertura <urlset> con el espacio de nombres, luego envuelve cada URL de tu lista en un par <url> / <loc>.

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://ejemplo.com/</loc>
    <lastmod>2026-06-25</lastmod>
  </url>
  <url>
    <loc>https://ejemplo.com/precios</loc>
    <lastmod>2026-06-20</lastmod>
  </url>
</urlset>

Cuidado con los caracteres especiales. Dentro de un <loc>, un ampersand debe escribirse como &amp;, no como un & simple. Así que una URL como https://ejemplo.com/buscar?q=a&pagina=2 se convierte en https://ejemplo.com/buscar?q=a&amp;pagina=2. Un solo ampersand sin escapar romperá todo el archivo. (Como regla general, las URLs con parámetros rara vez pertenecen a un sitemap de todos modos).

Paso 3: Guárdalo en la raíz de tu sitio#

Sube sitemap.xml a la raíz de tu dominio para que esté en https://ejemplo.com/sitemap.xml. La ubicación en la raíz es la convención que los rastreadores esperan, y también define el alcance: un sitemap en la raíz puede listar URLs de todo el dominio.

Un sitemap técnicamente puede vivir en un subdirectorio, pero entonces solo es confiable para URLs en esa misma ruta. Mantenlo en la raíz a menos que tengas una razón específica para no hacerlo. Confirma que carga abriendo la URL en un navegador. Deberías ver XML sin procesar, no un 404 ni el HTML de tu sitio.

Paso 4: Apunta robots.txt al sitemap#

Añade una directiva de una línea a tu archivo robots.txt para que cualquier rastreador que lo lea descubra el sitemap automáticamente:

Sitemap: https://ejemplo.com/sitemap.xml

Usa la URL absoluta completa y coloca la línea en cualquier parte del archivo (no está vinculada a ningún bloque de user-agent). Si aún no tienes un archivo robots, nuestro generador de robots.txt gratuito crea uno válido con la línea del sitemap ya incluida.

Paso 5: Valida antes de enviar#

No envíes un sitemap que no hayas validado. Una sola etiqueta mal formada puede hacer que Google rechace todo el archivo en silencio. Ejecuta el XML sin procesar a través de un validador que verifique tanto la buena formación (etiquetas correctas, caracteres escapados) como el cumplimiento del protocolo (espacio de nombres correcto, URLs absolutas, límites de tamaño).

La forma más rápida es pegar tu URL en el generador y validador de sitemaps XML gratuito de Molixa. Revisa tu estructura, señala caracteres no escapados y URLs relativas, e incluso puede construir un sitemap limpio por ti si prefieres no mantener el archivo a mano. Validar aquí primero te ahorra el viaje de ida y vuelta de enviar un archivo roto y esperar a que Search Console se queje.

Paso 6: Envíalo en Google Search Console#

Abre Search Console, elige tu propiedad y ve al informe de Sitemaps en el menú izquierdo. Ingresa sitemap.xml (la ruta relativa a tu dominio) y haz clic en Enviar.

Google obtendrá el archivo, reportará cuántas URLs descubrió y marcará cualquier error de análisis. El envío no desencadena una indexación instantánea. Espera que Google vuelva a rastrear en días, no en minutos. Puedes enviar el mismo sitemap a Bing Webmaster Tools de la misma manera, y la línea de robots.txt cubre a los rastreadores que nunca ven tus paneles de webmaster.

El límite de 50,000 URL y los archivos de índice de sitemap#

Un archivo de sitemap individual tiene dos límites estrictos establecidos por el protocolo: un máximo de 50,000 URL y un tamaño de archivo sin comprimir máximo de 50 MB. Si se alcanza cualquiera de estos límites, debes dividir tu sitemap y luego unir las partes con un archivo de índice de sitemap.

Este es el momento que la mayoría de las guías basadas en complementos omiten por completo. Un índice de sitemap es un sitemap de sitemaps. En lugar de enumerar páginas, enumera tus archivos de sitemap individuales.

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://ejemplo.com/sitemap-articulos.xml</loc>
    <lastmod>2026-06-25</lastmod>
  </sitemap>
  <sitemap>
    <loc>https://ejemplo.com/sitemap-productos.xml</loc>
    <lastmod>2026-06-24</lastmod>
  </sitemap>
</sitemapindex>

Observa las diferencias: el contenedor es <sitemapindex> no <urlset>, y cada entrada usa <sitemap> en lugar de <url>. Solo envías el archivo de índice en Search Console, y Google obtiene cada sitemap hijo que referencia.

Incluso si estás lejos de las 50,000 URL, dividir por tipo de contenido (artículos, productos, páginas) es una buena práctica. Cuando Search Console informa un problema de cobertura, un índice te permite ver qué segmento del sitio tiene el problema en lugar de mirar un archivo gigante. También puedes comprimir cualquier sitemap a sitemap.xml.gz para mantenerte por debajo del límite de tamaño; el límite de recuento de URL aún se aplica al contenido sin comprimir.

Errores comunes en sitemaps manuales#

Estos son los errores que convierten una tarea de cinco minutos en una tarde de depuración. La mayoría aparecen como un vago mensaje de "no se puede obtener" o "tiene errores" en Search Console.

  • URLs relativas. <loc>/about</loc> no es válido. Usa siempre la URL completa con https://.
  • Protocolos o dominios mixtos. No incluyas versiones http:// y https://, ni www y sin www. Elige tu versión canónica y enumera solo esa.
  • Incluir URLs no canónicas o con noindex. Si una página se canonaliza a otra o lleva un noindex, dejarla en el sitemap contradice tus propias señales.
  • Un ampersand sin escapar. El error de análisis más común. Escápa lo como &amp;.
  • Fechas lastmod falsas o desactualizadas. Actualizar cada fecha a "hoy" en cada implementación enseña a Google a ignorar el campo.
  • Olvidar actualizar el archivo. Un sitemap codificado a mano no se actualiza solo. Las páginas nuevas no aparecerán hasta que las agregues, que es la principal desventaja del enfoque manual frente a un generador.

Advertencia: nunca incluyas URLs que hayas bloqueado en robots.txt. Decirle a Google "rastrea esto" en el sitemap mientras le dices "no rastrees esto" en robots.txt es una contradicción que desperdicia el presupuesto de rastreo y genera advertencias.

Manual vs Generado: ¿Cuál deberías usar#

Codificar un sitemap a mano es perfecto para sitios pequeños y estables, y para entender exactamente qué hace el archivo. La desventaja es el mantenimiento: cada nueva página requiere una edición manual, y un error tipográfico puede romper todo el archivo en silencio.

Para sitios que publican con regularidad, un generador que rastree tu sitio en vivo y reconstruya el archivo automáticamente elimina el error humano y el mantenimiento. El punto medio que muchos eligen es generar el archivo con una herramienta y luego leer el resultado para entender realmente lo que se envió. Combinar un sitemap limpio con una estructura sólida en la página, como un marcado de esquema adecuado para resultados enriquecidos, es lo que potencia tu SEO técnico con el tiempo.

Conclusión#

Ahora ya sabes cómo crear un sitemap XML manualmente: enumera tus URLs indexables, envuelve cada una en <url> y <loc> dentro de un <urlset> con espacio de nombres, mantén <lastmod> honesto, ignora <priority> y <changefreq>, valida el archivo, agrega la línea del sitemap en robots.txt y envíalo en Search Console. Divídelo en un índice de sitemap una vez que superes las 50,000 URLs o los 50 MB.

El archivo es realmente simple una vez que eliminas el misterio de los plugins. Créalo una vez a mano para aprender la estructura, luego decide si mantenerlo manualmente o dejar que el generador de sitemaps XML lo mantenga actualizado por ti y lo valide en cada cambio.

Preguntas Frecuentes#

¿Necesito un sitemap XML si mi sitio es pequeño? No es estrictamente necesario. Google suele descubrir todas las páginas de un sitio pequeño y bien enlazado mediante el rastreo normal. Un sitemap ayuda acelerando el descubrimiento de contenido nuevo y eliminando dudas sobre qué URLs consideras importantes, por lo que requiere poco esfuerzo y vale la pena tenerlo incluso en sitios con pocas páginas.

¿Agregar una URL a mi sitemap garantiza que se indexe? No. Un sitemap es una ayuda para el descubrimiento, no un comando de indexación. Google decide de forma independiente si una página merece ser indexada según su calidad y singularidad. Una URL puede aparecer en tu sitemap y aun así mostrar "Rastreada, no indexada" o "Descubierta, no indexada" en Search Console.

¿Debo establecer prioridad y frecuencia de cambio en mis URLs? Puedes hacerlo, pero Google ignora ambos. Lee <loc> y usa <lastmod> cuando las fechas son precisas, mientras que <changefreq> y <priority> no tienen efecto en el rastreo ni en el ranking de Google. Son inofensivos para incluirlos para otros motores, pero no pierdas tiempo ajustándolos.

¿Dónde debe estar el archivo sitemap.xml? Colócalo en la raíz de tu dominio, accesible en https://tudominio.com/sitemap.xml. La ubicación raíz permite que un solo sitemap cubra URLs de todo tu dominio y coincide con lo que esperan los rastreadores. Agrega una línea Sitemap: en robots.txt y envía la URL en Search Console para que se descubra a través de todos los canales.

¿Cómo valido mi sitemap antes de enviarlo? Verifica que el XML esté bien formado (etiquetas correctas, ampersands escapados, codificación UTF-8) y que siga el protocolo (el namespace correcto, URLs absolutas, dentro de los límites de 50,000 URLs y 50 MB). Pega tu sitemap en un validador como la herramienta de sitemaps de Molixa, corrige cualquier problema señalado y luego envía el archivo limpio en Google Search Console.

¿Qué sucede cuando tengo más de 50,000 URLs? Divide tus URLs en varios archivos de sitemap, cada uno con menos de 50,000 URLs y 50 MB, luego crea un archivo de índice de sitemap que liste esos sitemaps hijos usando entradas <sitemapindex> y <sitemap>. Envía solo el archivo de índice a Search Console, y Google obtendrá cada sitemap que referencia.

xml sitemapsitemap.xmltechnical seogoogle search consolecrawling

More from Molixa

Try Molixa Tools

50+ free AI tools for content creation, SEO, coding, and more. No signup, no watermark.

Explore all tools