Indexación de aplicaciones (enlaces profundos de apps para la búsqueda)

Qué era Google App Indexing, por qué está obsoleto y qué lo sustituyó realmente: Android App Links (assetlinks.json) y Universal Links de iOS (apple-app-site-association). La historia, el mito de que los enlaces profundos ayudan a posicionar y cómo implementar y medir hoy los enlaces profundos de apps.

Publicado por primera vez: 3 jul 2026 · Última actualización: 8 ago 2026 · Avanzado
Idiomas

App Indexing fue el sistema de Google (2013–~2021) para rastrear contenido de aplicaciones nativas y emitir apps no instaladas dentro de los resultados de búsqueda. Está obsoleto: AppIndexApi aparece como obsoleto en la documentación de Google y Firebase App Indexing ya no se utiliza en la aplicación Google Search. Lo que lo sustituyó son los enlaces profundos de apps: Android App Links (verificados mediante assetlinks.json) y Universal Links de iOS (verificados mediante apple-app-site-association). El hecho actual más importante es que los enlaces profundos no cambian la indexación ni el posicionamiento —Google sigue posicionando la página web—; solo dirigen a una persona que ya tiene instalada la app hacia la app después de hacer clic en un resultado. El único requisito real es la paridad de contenido entre la pantalla de la app y la página web. Mídela con el filtro de apariencia Android app de Search Console.

Evidence for this claim Android App Links use verified website associations to open matching web URLs in an installed Android app. Scope: Android deep linking; it does not establish a Google Search ranking benefit. Confidence: high · Verified: Android Developers: App Links Evidence for this claim Apple Universal Links associate HTTPS URLs with installed apps through an apple-app-site-association file and app entitlement. Scope: Apple platform deep linking; separate from historical Google App Indexing. Confidence: high · Verified: Apple Developer: Universal Links

TL;DR — Google App Indexing (2013) → Firebase App Indexing (2016, además de un experimento breve de «app streaming») → obsoleto hacia 2021. Su sucesor son los enlaces profundos de apps: Android App Links (verificados con un archivo Digital Asset Links en /.well-known/assetlinks.json más filtros de intent android:autoVerify) y Universal Links de iOS (verificados con un archivo apple-app-site-association más el entitlement Associated Domains). Según la guía de Google de mayo de 2025, los enlaces profundos no cambian la indexación ni el posicionamiento —Search sigue posicionando la página web— y el destino del enlace profundo debe corresponder al contenido de la URL web. Mide el comportamiento de los enlaces de apps con analítica de la plataforma y de la aplicación, en lugar de suponer que existe un informe específico en Search Console.

Tres épocas, un nombre confuso

La razón por la que «App Indexing» genera tanta confusión es que la misma idea tuvo tres nombres distintos durante una década, y la última transición fue una obsolescencia que muchos contenidos antiguos nunca llegaron a reflejar.

2013–2016 — Google App Indexing. En octubre de 2013 Google anunció que “Googlebot can now index content in your Android app,” (traducción) «Googlebot ya puede indexar contenido de tu app Android», y que mostraría enlaces profundos a la app “straight in our search results when we think they’re relevant… and if the user has the app installed.” (traducción) «directamente en nuestros resultados de búsqueda cuando pensemos que son relevantes… y si la persona tiene instalada la app». Se declaraba el contenido de la app mediante el sitemap existente y Webmaster Tools. Era Google rastreando dentro de las apps, igual que rastrea las páginas web.

2016–~2021 — Firebase App Indexing. Tras la adquisición de Firebase por parte de Google en 2014, App Indexing pasó a llamarse Firebase App Indexing alrededor de Google I/O 2016. Añadió compatibilidad con iOS y, durante un tiempo, un experimento llamado app streaming: un botón «Try Now» que permitía ejecutar durante unos minutos en el navegador una app no instalada, directamente desde un resultado de búsqueda. App streaming fue un experimento limitado de 2015–2016 y desapareció hace mucho; no diseñes nada basándote en él.

~2021–presente — obsoleto. La interfaz AppIndexApi aparece como obsoleta en la documentación de referencia de Android de Google. La documentación actual de Firebase indica que Firebase App Indexing “is no longer the recommended way of indexing content for display as suggested results in Google Search App,” (traducción) «ya no es la forma recomendada de indexar contenido para mostrarlo como resultados sugeridos en Google Search App», y advierte explícitamente que “the Google Search App for Android no longer uses local content indexed via Firebase App Indexing to provide results to users.” (traducción) «la aplicación Google Search para Android ya no utiliza contenido local indexado mediante Firebase App Indexing para proporcionar resultados a los usuarios». Firebase te dirige ahora a App Links y Universal Links como ruta recomendada. (El cambio se produjo en 2021: el aviso de obsolescencia aparece en una instantánea archivada de octubre de 2022, pero no en la de octubre de 2020).

Qué sustituyó a App Indexing: enlaces profundos de apps

Los enlaces profundos son, en palabras de Google, “special URIs that take users beyond your mobile app’s homepage, leading them directly to specific in-app content.” (traducción) «URI especiales que llevan a las personas más allá de la página de inicio de la app móvil, directamente a contenido específico dentro de la app». El cambio de modelo mental respecto al sistema antiguo es clave: esto es verificación y enrutamiento, gestionados en el nivel del sistema operativo y del navegador, no una canalización de indexación ejecutada por Google. Aquí no se «envía nada a un índice».

Android App Links son, según Google, “an enhanced deep linking capability that verifies deep links to your own website by establishing a trusted association between your app and your website. After they are verified, deep links to your website can immediately open corresponding content in your app, without requiring the user to select your app from a disambiguation dialog.” (traducción) «una capacidad avanzada de enlaces profundos que verifica los enlaces profundos a tu propio sitio mediante una asociación de confianza entre tu app y tu sitio. Una vez verificados, los enlaces profundos a tu sitio pueden abrir inmediatamente el contenido correspondiente en tu app, sin que la persona tenga que seleccionar tu app en un diálogo de desambiguación». App Links es compatible con Android 6 y posteriores, y Google lo considera «un enfoque recomendado» para los enlaces profundos a tu propio sitio.

El intercambio de verificación utiliza un archivo Digital Asset Links. Cuando colocas android:autoVerify="true" en un filtro de intent y la app está instalada, “Android queries the corresponding websites for the Digital Asset Links file at https://hostname/.well-known/assetlinks.json.” (traducción) «Android consulta los sitios web correspondientes en busca del archivo Digital Asset Links en https://hostname/.well-known/assetlinks.json». Ese archivo JSON enumera qué paquete de app y qué huella del certificado de firma tienen permiso para gestionar los enlaces de tu dominio. Android 15 añade Dynamic App Links, que permite ajustar el comportamiento de coincidencia de URL sin publicar una nueva versión de la app.

Aquí importan dos límites de versión y firma. Primero, Dynamic App Links amplía la asociación subyacente del manifiesto en lugar de sustituirla: en versiones de Android anteriores a 15, la verificación sigue ejecutándose únicamente con la coincidencia estándar entre el manifiesto y assetlinks.json. Segundo, la verificación falla por completo, no de forma parcial, si la huella del certificado de firma incluida en assetlinks.json no coincide exactamente con la identidad de firma real de la compilación instalada: una compilación de depuración firmada con otra clave nunca se verificará, aunque todos los demás campos sean correctos.

Conviene mantener clara esta distinción: un enlace profundo básico de Android utiliza filtros de intent, pero puede activar el diálogo de desambiguación «¿con qué app quieres abrirlo?». App Links añade la verificación de Digital Asset Links para que un dominio verificado se abra directamente en tu app, sin diálogo.

El equivalente de Apple son los Universal Links. Apple explica: “When users tap or click a universal link, the system redirects the link directly to your app without routing through the person’s default web browser or your website… because universal links are standard HTTP or HTTPS links, one URL works for both your website and your app. If the person hasn’t installed your app, the system opens the URL in their default web browser.” (traducción) «Cuando las personas tocan o hacen clic en un enlace universal, el sistema redirige el enlace directamente a tu app sin pasar por el navegador web predeterminado de la persona ni por tu sitio web… como los enlaces universales son enlaces HTTP o HTTPS estándar, una URL funciona tanto para tu sitio web como para tu app. Si la persona no ha instalado tu app, el sistema abre la URL en su navegador web predeterminado».

El archivo de verificación es apple-app-site-association, alojado en tu servidor web: “When someone installs your app, the system checks a file stored on your web server to verify that your website allows your app to open URLs on its behalf.” (traducción) «Cuando alguien instala tu app, el sistema comprueba un archivo almacenado en tu servidor web para verificar que tu sitio permite que tu app abra URL en su nombre». En la app necesitas el entitlement Associated Domains, cuyos dominios deben coincidir con los del archivo. Es el mismo principio que en Android: un intercambio de confianza entre el sitio y la app, comprobado por el dispositivo, no una señal de posicionamiento.

Un archivo apple-app-site-association válido y un entitlement correctamente coincidente tampoco garantizan que cada toque abra la app. Apple documenta casos reales en los que un Universal Link sigue abriendo Safari pese a que la asociación funciona: por ejemplo, cuando el enlace se toca dentro del propio Safari mientras ya se está navegando por el mismo dominio, o cuando la persona eligió anteriormente seguir abriendo los enlaces de ese dominio en el navegador. Y cuando la app no está instalada o la asociación no coincide, un enlace HTTP(S) estándar debe abrirse en el navegador en lugar de terminar en un esquema personalizado roto: ese fallback es el sistema funcionando como debe, no un error que haya que perseguir.

Las dos plataformas son compatibles con Google Search como destinos de enlaces profundos.

¿Los enlaces profundos de apps afectan al posicionamiento? (No; aquí está la cita exacta)

Esta es la corrección más importante de todo el tema, porque las páginas sobre posicionamiento todavía se equivocan. Encontrarás artículos que afirman cosas como «App Indexing influirá en el posicionamiento… tengas o no instalada la app» o «Google utilizará el contenido de tu app como señal de posicionamiento». Esas afirmaciones son falsas, y la publicación de Google de mayo de 2025 lo dice directamente:

“Adding deep links to your website connects the website’s URLs with the relevant app pages. It doesn’t change how Google Search shows your content; Search continues to use the content of your web pages for indexing and ranking. App deep links enable users to go from Search results directly to the corresponding app page (if installed), resulting in a better user experience.” (traducción) «Añadir enlaces profundos a tu sitio conecta las URL del sitio con las páginas correspondientes de la app. No cambia cómo Google Search muestra tu contenido; Search sigue utilizando el contenido de tus páginas web para indexar y posicionar. Los enlaces profundos permiten que las personas pasen directamente de los resultados de Search a la página correspondiente de la app (si está instalada), lo que produce una mejor experiencia de usuario».

Evidence for this claim Google says adding app deep links does not change how Search indexes or ranks content; the corresponding web page remains the indexing and ranking source. Scope: public web Confidence: high · Verified: App deep links: connecting your website and app

Léelo con atención: lo que se indexa y posiciona es la página web. El enlace profundo es una capa de enrutamiento posterior al clic que solo se activa para quienes ya tienen instalada la app. Es una mejora de UX, no una palanca de visibilidad. Si alguien te dice que configurar assetlinks.json mejorará tu posicionamiento, se equivoca.

El único requisito real: paridad de contenido

Solo hay una regla sustantiva, y trata de la honestidad con la persona usuaria. Google dice:

“Because Search uses your web page content for indexing and ranking, you should only add deep links in cases where the app page contains the same content as the corresponding web page. Otherwise, the title and snippet shown for the page in Google Search could mislead users about the content they will see after they click. Layout or other UX differences between app pages and the corresponding web pages are OK, as long as the content matches. (traducción) «Como Search utiliza el contenido de tu página web para indexar y posicionar, solo debes añadir enlaces profundos cuando la página de la app contenga el mismo contenido que la página web correspondiente. De lo contrario, el título y el fragmento mostrados para la página en Google Search podrían inducir a error sobre el contenido que verán después de hacer clic. Las diferencias de diseño u otras diferencias de UX entre las páginas de la app y las páginas web correspondientes están bien, siempre que el contenido coincida.»

Por tanto: una pantalla nativa, más bonita y con una distribución distinta está bien. Una pantalla cuyo contenido sea diferente al de la página web no, porque el fragmento que la persona tocó se construyó a partir de la página web y ahora ha aterrizado en un lugar que no coincide. La paridad se refiere al contenido, no al aspecto.

Cómo implementarlo hoy

Android: utiliza App Links. Asocia la app con el sitio web en el manifiesto de la app (filtros de intent con android:autoVerify="true") y publica /.well-known/assetlinks.json en tu sitio con el nombre del paquete y la huella del certificado de firma de la app. Android verifica la asociación al instalar. El App Links Assistant de Android Studio y la página Deep Links de Play Console ayudan a generar y validar la configuración.

iOS: implementa Universal Links. Publica un archivo apple-app-site-association en tu servidor web que describa qué rutas corresponden a tu app y añade el entitlement Associated Domains en la app para los dominios coincidentes. La guía de depuración de Universal Links de Apple explica fallos habituales (tipo de contenido incorrecto del archivo, entitlement ausente o asociación en caché).

Ninguno de los dos archivos se rastrea en un «índice de búsqueda» como sugería App Indexing: son intercambios de confianza que comprueba el dispositivo. Si los configuras mal, los enlaces vuelven al navegador; si los configuras bien, las personas que tienen instalada la app entran en ella.

Comprobación mínima de los archivos de asociación

curl -sI https://example.com/.well-known/assetlinks.json
curl -sI https://example.com/.well-known/apple-app-site-association

Los dos endpoints deben devolver 200 sin redireccionar y exponer la respuesta JSON esperada. La lente Scripts contiene las comprobaciones ampliadas de tipo de contenido, redirecciones, PowerShell, DevTools y bookmarklet.

Cómo medirlo: el filtro de app Android de Search Console

Google expone de forma nativa el rendimiento de los enlaces profundos de apps: «Search Console incluye el rendimiento de los enlaces profundos de apps de tu sitio para Android. En el informe de rendimiento puedes utilizar el filtro de apariencia de búsqueda Android App para ver cuándo se encuentran y muestran a las personas tus enlaces profundos de Android». Eso proporciona clics, impresiones, CTR y posición de los resultados en los que apareció el enlace profundo Android: la forma concreta y actual de comprobar si esto sirve para algo. (El filtro se añadió en 2019 y sigue siendo la herramienta vigente según la publicación de Google de 2025).

Pero separa las dos tareas. El filtro de Search Console es un informe de tráfico/apariencia: solo para Android, depende de que Google muestre realmente el tratamiento de enlace profundo para una consulta concreta y no demuestra por sí mismo que algo esté indexado o posicione. Confirmar que un enlace profundo funciona técnicamente es otra tarea: recupera los archivos de asociación y prueba el recorrido del toque en dispositivos reales (consulta las pestañas Scripts y Validation Tests). No interpretes un informe silencioso de Search Console como prueba de que tu configuración está rota, ni interpretes sus clics como una señal SEO: informa del volumen de enrutamiento, no del posicionamiento.

Bing y los enlaces profundos de apps

No des por supuesta la paridad entre Google y Bing. Bing ejecutó desde abril de 2014 un programa de «app linking» centrado en Windows, dirigido a Windows 8,1 y Windows Phone, pero esas páginas ya no existen (la URL de desarrollo devuelve 404 y las entradas del blog redirigen a la página de inicio genérica); además, Windows Phone se descontinuó. No existe un equivalente actual publicado por Bing de la guía de Google de 2025 sobre enlaces profundos de apps. En la práctica, App Links y Universal Links siguen funcionando en Bing/Edge móvil porque son estándares del sistema operativo y del navegador, no algo que un buscador deba adoptar; por eso se implementan igual. Simplemente no hay un documento de Bing que citar.

Cosas antiguas que todavía verás por ahí

Un par de técnicas cercanas generan confusión; nómbralas y sigue adelante:

  • Marcado schema.org potentialAction / ViewAction con un destino de enlace profundo android-app://. Es una técnica antigua vinculada a la época de App Indexing. Todavía puedes encontrarla en bases de código y en el vocabulario de acciones de schema.org, pero la recomendación actual de Google es configurar App Links / Universal Links, no este marcado. Trátalo como algo que «todavía puedes ver», no como una recomendación.
  • Firebase Dynamic Links es un producto distinto y obsoleto por separado de Firebase: un servicio de acortamiento de URL y enlaces profundos diferidos para atribución de marketing, no el sistema de contenido de App Indexing. También se está retirando, y su guía de migración dirige a App Links y Universal Links. No confundas ambas obsolescencias.

El modelo claro que debes conservar es: (1) el sistema antiguo de rastreo y streaming de Google App Indexing / Firebase App Indexing = muerto; (2) los enlaces profundos App Links / Universal Links = vigentes, solo de enrutamiento/UX y sin efecto en el posicionamiento; (3) el antiguo programa de enlaces de apps de Bing para Windows = también muerto y sin sustituto documentado.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.