Volver al blog

Fingerprinting de API de batería: cómo Facebook y TikTok te rastrean a través de la carga de la batería

La API de batería permite a los sitios web rastrear el nivel de carga de la batería y crear una huella digital única del dispositivo. Analizamos cómo funciona y cómo protegerse al trabajar con varias cuentas.

📅10 de enero de 2026
```html

Si trabajas con varias cuentas en Facebook Ads, Instagram o TikTok, seguramente te has encontrado con la situación: todo está configurado correctamente: diferentes proxies, navegador anti-detección, cookies únicas, pero las cuentas aún se vinculan y son baneadas en cadena. Una de las razones es el fingerprinting de Battery API, una tecnología de seguimiento a través de los datos de la batería de tu dispositivo.

En esta guía, analizaremos cómo funciona este método de seguimiento, por qué es peligroso para el multi-cuentas y cómo configurar correctamente la protección en Dolphin Anty, AdsPower y otros navegadores anti-detección.

Qué es Battery API y cómo funciona

Battery API (API de Estado de Batería) es una interfaz web estándar que permite a los sitios obtener información sobre el estado de la batería de tu dispositivo. Inicialmente, la tecnología fue creada para propósitos útiles: por ejemplo, una aplicación web podría reducir la calidad del video cuando la batería está baja, para prolongar el tiempo de uso del dispositivo.

A través de Battery API, un sitio puede obtener los siguientes datos:

  • Nivel de carga de la batería — porcentaje de 0 a 100%
  • Tiempo hasta la descarga completa — en segundos al nivel actual de consumo
  • Tiempo hasta la carga completa — si el dispositivo está conectado a la corriente
  • Estado de carga — si el dispositivo está conectado a la red o funciona con batería

¿Qué hay de peligroso en estos datos? El problema es que la combinación de estos parámetros crea una huella digital prácticamente única del dispositivo. La probabilidad de que dos usuarios diferentes tengan exactamente el mismo nivel de carga (por ejemplo, 73.4%), el mismo tiempo hasta la descarga (por ejemplo, 8347 segundos) y el mismo estado de carga es extremadamente baja.

Importante: Battery API funciona incluso en computadoras de escritorio con laptops. Si usas una laptop para trabajar con multi-cuentas, los datos de la batería pueden delatarte incluso al usar diferentes proxies y perfiles de navegador.

Cómo los sitios obtienen datos de Battery API

Técnicamente, esto se implementa a través de un simple código JavaScript que se ejecuta en el navegador al cargar la página:

navigator.getBattery().then(function(battery) {
  console.log('Nivel de carga: ' + battery.level * 100 + '%');
  console.log('Tiempo hasta la descarga: ' + battery.dischargingTime + ' seg');
  console.log('Tiempo hasta la carga: ' + battery.chargingTime + ' seg');
  console.log('Estado de carga: ' + battery.charging);
  
  // Creación de un fingerprint único
  var batteryFingerprint = battery.level + '_' + 
                          battery.dischargingTime + '_' + 
                          battery.chargingTime + '_' + 
                          battery.charging;
});

Este código se ejecuta sin que el usuario se dé cuenta y envía los datos al servidor de la plataforma. Luego, estos datos se combinan con otros parámetros de fingerprinting — resolución de pantalla, zona horaria, fuentes instaladas, parámetros de WebGL — y se crea una huella digital única del dispositivo.

Por qué Battery API es peligroso para el multi-cuentas

Para los arbitrajistas, especialistas en SMM y todos los que trabajan con varias cuentas, Battery API crea un problema serio: permite a las plataformas vincular cuentas incluso al usar diferentes direcciones IP y perfiles de navegador.

Escenario 1: Trabajando con varias cuentas en una laptop

Imagina la situación: eres un arbitrajista, manejas 10 cuentas de Facebook Ads en una sola laptop. Para cada cuenta están configurados:

  • Perfil separado en Dolphin Anty o AdsPower
  • Proxy residencial único de diferentes países
  • Diferentes User-Agent, resoluciones de pantalla, idiomas
  • Cookies y localStorage únicos

Todo parece perfecto. Pero aquí está el problema: las 10 cuentas funcionan en un solo dispositivo físico con una sola batería. A las 14:35, todas envían al servidor de Facebook los mismos datos:

  • Nivel de carga: 67.3%
  • Tiempo hasta la descarga: 9234 segundos
  • Estado: no se está cargando

Para los algoritmos de Facebook, esto es una bandera roja: 10 "personas" diferentes de diferentes países con diferentes dispositivos tienen parámetros de batería absolutamente idénticos en un momento dado. La probabilidad de tal coincidencia es prácticamente nula. El resultado: todas las cuentas se vinculan y son baneadas en cadena (chain-ban).

Escenario 2: Agencia de SMM con cuentas de clientes

Una situación aún más peligrosa para los especialistas en SMM. Manejas 30 cuentas de Instagram de diferentes clientes desde una sola laptop de trabajo. Si Instagram detecta el mismo fingerprint de Battery API en todas estas cuentas, la plataforma puede:

  • Marcar todas las cuentas como sospechosas
  • Limitar el alcance y las impresiones de las Stories
  • Bloquear la posibilidad de iniciar anuncios
  • En el peor de los casos, bloquear las cuentas de los clientes

La pérdida de cuentas de clientes no solo implica pérdidas financieras, sino también riesgos reputacionales para la agencia.

Caso real: Una agencia de SMM perdió 18 cuentas de Instagram de clientes en un solo día debido a un chain-ban. La razón: todas las cuentas se manejaban desde una MacBook Pro, y Instagram detectó datos idénticos de Battery API. El daño financiero superó los 400,000 rublos (pérdida de clientes + recuperación de cuentas).

Por qué los métodos de protección comunes no funcionan

Muchos arbitrajistas y especialistas en SMM piensan que es suficiente usar proxies de calidad y un navegador anti-detección. Pero Battery API elude estas protecciones:

Método de protección ¿Protege contra Battery API? Por qué no funciona
Proxies residenciales No Battery API funciona a nivel de navegador, los proxies no afectan estos datos
Diferentes User-Agent No User-Agent cambia la información sobre el navegador, pero no sobre la batería del dispositivo
Limpieza de cookies No Battery API no utiliza cookies, funciona a través de JavaScript
VPN en lugar de proxies No VPN solo cambia la dirección IP, los datos de la batería permanecen reales
Navegador anti-detección (sin configuración) Parcialmente Por defecto, muchos anti-detectores no sustituyen Battery API

La única forma confiable de protección es la configuración correcta de la sustitución de Battery API en el navegador anti-detección. Esto lo explicaremos en detalle en la sección sobre la configuración de protección.

Cómo Facebook, TikTok e Instagram utilizan los datos de la batería

Diferentes plataformas utilizan fingerprinting de Battery API con diferentes grados de agresividad. Comprender estas diferencias ayudará a configurar correctamente la protección para tareas específicas.

Facebook y Facebook Ads

Facebook utiliza uno de los algoritmos de fingerprinting más avanzados en la industria. Battery API es solo uno de más de 50 parámetros que la plataforma recopila para crear una huella digital única del dispositivo. Facebook combina los datos de la batería con:

  • Fingerprint de WebGL — parámetros de la tarjeta gráfica y renderizado
  • Fingerprint de Canvas — huella digital única a través del renderizado gráfico
  • Fingerprint de AudioContext — parámetros del subsistema de audio
  • Lista de fuentes — fuentes instaladas en el sistema
  • Parámetros de pantalla — resolución, profundidad de color, relación de aspecto
  • Zona horaria e idioma — configuración de zona horaria y de idioma

Para Facebook Ads, es especialmente crítico: si la plataforma detecta que varias cuentas publicitarias tienen el mismo fingerprint de Battery API, esto puede llevar a:

  • Baneo instantáneo de todas las cuentas vinculadas
  • Bloqueo del Business Manager
  • Imposibilidad de crear nuevas cuentas publicitarias
  • Baneo por hardware (hardware ban) — bloqueo del propio dispositivo

Instagram

Instagram (pertenece a Meta) utiliza algoritmos similares, pero con algunas particularidades. La plataforma es más tolerante al multi-cuentas en dispositivos móviles (muchos usuarios tienen legalmente varias cuentas), pero banea severamente la actividad sospechosa en el escritorio.

Battery API en Instagram se utiliza en conjunto con:

  • Patrones de comportamiento — tiempo de actividad, velocidad de acciones, intervalos entre publicaciones
  • Geolocalización — correspondencia entre la dirección IP y la zona horaria
  • Tipo de dispositivo — aplicación móvil vs versión web

Si manejas cuentas de clientes a través de la versión web de Instagram desde una sola laptop, un fingerprint idéntico de Battery API puede ser la causa de un baneo en sombra (shadowban) — cuando la cuenta no está bloqueada, pero el alcance cae a cero.

TikTok y TikTok Ads

TikTok es conocido por tener uno de los sistemas de antifraude más agresivos. La plataforma utiliza activamente Battery API para combatir:

  • Inflación de vistas y "me gusta"
  • Farming de cuentas para arbitraje
  • Automatización a través de bots

Una característica de TikTok es que la plataforma analiza el cambio en el nivel de la batería a lo largo del tiempo. Si varias cuentas muestran un cambio de carga absolutamente sincronizado (por ejemplo, todas las cuentas se descargaron del 85% al 78% en 30 minutos), esto es una señal clara de que están trabajando desde un solo dispositivo.

Consejo para arbitrajistas de TikTok Ads: Utiliza proxies móviles en combinación con la correcta sustitución de Battery API. TikTok es más tolerante al tráfico móvil, y las IP móviles son menos propensas a bloqueos.

Google Ads y YouTube

Google utiliza Battery API de manera menos agresiva que Meta o TikTok, pero aún así recopila estos datos. El objetivo principal es combatir el click fraud (inflación de clics en anuncios) y detectar bots.

Para los arbitrajistas de Google Ads, es crítico:

  • Google rara vez banea cuentas solo por Battery API, pero utiliza estos datos en una evaluación integral
  • Si tienes varias cuentas publicitarias con el mismo fingerprint, Google puede limitar el gasto del presupuesto
  • Si sospecha de fraude, Google puede requerir verificación de identidad y negocio

Métodos de detección del fingerprinting de Battery API

Antes de configurar la protección, es importante entender cómo exactamente las plataformas utilizan Battery API para el seguimiento. Esto ayudará a elegir la estrategia de protección adecuada.

Método 1: Fingerprint estático (instantánea en un momento dado)

El método más simple es que la plataforma recopila datos de Battery API en el momento de cargar la página y los guarda como parte del fingerprint. Por ejemplo:

  • Usuario A entra a Facebook a las 14:00 — nivel de batería 82%
  • Usuario B entra a Facebook a las 14:05 — nivel de batería 82%
  • Usuario C entra a Facebook a las 14:10 — nivel de batería 81%

Si los tres usuarios tienen valores idénticos o muy cercanos de otros parámetros (resolución de pantalla, zona horaria, WebGL), la plataforma puede suponer que es una sola persona con diferentes cuentas.

Método 2: Análisis dinámico (seguimiento de cambios)

Un método más avanzado es que la plataforma rastrea cómo cambia el nivel de la batería a lo largo del tiempo. El código JavaScript en la página verifica periódicamente (por ejemplo, cada 5 minutos) el nivel de carga actual y envía los datos al servidor.

Esto permite crear un "gráfico de descarga" del dispositivo. Si varias cuentas muestran un gráfico absolutamente idéntico, esto es una señal clara de que están trabajando desde un solo dispositivo.

// Ejemplo de código para seguimiento dinámico
var batteryLog = [];

navigator.getBattery().then(function(battery) {
  // Primera entrada al cargar la página
  batteryLog.push({
    time: Date.now(),
    level: battery.level,
    charging: battery.charging
  });
  
  // Verificación repetida cada 5 minutos
  setInterval(function() {
    batteryLog.push({
      time: Date.now(),
      level: battery.level,
      charging: battery.charging
    });
    
    // Envío de datos al servidor
    sendToServer(batteryLog);
  }, 300000); // 5 minutos
});

Método 3: Seguimiento entre navegadores

Algunas plataformas utilizan Battery API para vincular la actividad del usuario en diferentes navegadores en un mismo dispositivo. Por ejemplo:

  • Usuario entra a Instagram a través de Chrome — batería 65%
  • 10 minutos después entra a TikTok a través de Firefox — batería 64%
  • 15 minutos después entra a Facebook a través de Edge — batería 63%

Incluso si se utilizan diferentes navegadores y diferentes proxies, el cambio sincronizado en el nivel de la batería puede vincular estas sesiones como actividad de un solo dispositivo físico.

Método 4: Combinación con otras técnicas de fingerprinting

Battery API rara vez se utiliza de forma aislada. Las plataformas combinan los datos de la batería con otros métodos de fingerprinting para aumentar la precisión:

Método de fingerprinting Cómo se combina con Battery API Nivel de amenaza
Fingerprint de Canvas Canvas idéntico + batería idéntica = alta probabilidad de coincidencia Alto
Fingerprint de WebGL Parámetros de la tarjeta gráfica + dinámica de la batería crean un perfil único del dispositivo Alto
Resolución de pantalla Resolución rara + batería única = casi 100% de identificación Medio
Zona horaria Incongruencia entre zona horaria y IP puede aumentar sospechas en caso de coincidencia de batería Medio
Lista de fuentes Conjunto único de fuentes + batería ayuda a identificar el dispositivo con mayor precisión Bajo

Configuración de protección en navegadores anti-detección

Ahora pasamos a la práctica: cómo configurar correctamente la protección contra el fingerprinting de Battery API en navegadores anti-detección populares. Revisaremos instrucciones paso a paso para Dolphin Anty, AdsPower, Multilogin y GoLogin.

Dolphin Anty — configuración de Battery API

Dolphin Anty es uno de los navegadores anti-detección más populares entre los arbitrajistas, especialmente para trabajar con Facebook Ads y TikTok Ads. El navegador tiene funciones integradas para sustituir Battery API.

Configuración paso a paso:

  1. Abre Dolphin Anty y crea un nuevo perfil (o abre uno existente para editar)
  2. En la configuración del perfil, busca la sección "Fingerprint" o "Huella digital"
  3. Desplázate hasta la sección "Battery API" o "Batería"
  4. Selecciona el modo de operación de Battery API:
    • Real — utiliza los datos de tu batería real (¡PELIGROSO para el multi-cuentas!)
    • Noise — añade desviaciones aleatorias a los datos reales (insuficiente para protección)
    • Off — bloquea el acceso a Battery API (puede parecer sospechoso)
    • Custom — permite establecer tus propios valores (RECOMENDADO)
  5. Selecciona el modo "Custom" y establece los parámetros:
    • Nivel de carga: valor aleatorio entre 40% y 95% (evita 100% — es sospechoso)
    • Estado de carga: aleatoriamente "charging" o "not charging"
    • Tiempo hasta la descarga: calculado automáticamente en función del nivel de carga
  6. IMPORTANTE: para cada perfil establece VALORES DIFERENTES de Battery API. ¡No uses los mismos valores para diferentes cuentas!
  7. Guarda la configuración del perfil

Recomendación para Dolphin Anty: Utiliza la función "Randomize on each launch" (Aleatorizar en cada inicio). Esto cambiará automáticamente el nivel de batería al iniciar el perfil, imitando el cambio natural de carga.

También activa la sincronización con el tiempo de funcionamiento del perfil: si el perfil funciona durante 2 horas, el nivel de batería debe disminuir gradualmente, imitando el uso real del dispositivo.

AdsPower — protección contra el fingerprinting de Battery

AdsPower es popular entre los especialistas en e-commerce y arbitrajistas que trabajan con plataformas asiáticas (AliExpress, Shopee, Lazada). La configuración de Battery API aquí es un poco diferente.

Instrucciones paso a paso:

  1. Abre AdsPower y ve a la sección "Browser Profiles"
  2. Crea un nuevo perfil o edita uno existente
  3. En la configuración, busca la pestaña "Advanced Settings" → "Hardware"
  4. Busca el parámetro "Battery Status API"
  5. Opciones disponibles:
    • Automatic — AdsPower genera automáticamente valores realistas
    • Manual — configuración manual de todos los parámetros
    • Disabled — desactivación total de Battery API
  6. Se recomienda seleccionar "Manual" para tener control total
  7. Establece los parámetros:
    • Nivel de batería: 45-90% (varía para diferentes perfiles)
    • Estado de carga: alterna true/false para diferentes perfiles
    • Tiempo de carga: si charging = true, establece un tiempo realista (1800-7200 segundos)
    • Tiempo de descarga: si charging = false, establece un tiempo de descarga (3600-14400 segundos)

Particularidad de AdsPower: el navegador permite crear "perfiles de dispositivos" (device profiles), donde puedes guardar un conjunto de parámetros (incluyendo Battery API) y aplicarlos a varios perfiles. Esto es conveniente, pero PELIGROSO: ¡no uses un mismo perfil de dispositivo para varias cuentas en una misma plataforma!

Multilogin — configuración profesional

Multilogin es un navegador anti-detección premium con las capacidades de protección de fingerprint más avanzadas. Es más caro (desde $99/mes), pero ofrece el máximo nivel de protección.

Configuración de Battery API en Multilogin:

  1. Abre Multilogin y crea un nuevo perfil (Mimic o Stealthfox)
  2. En la sección "Hardware", busca "Battery Status"
  3. Multilogin ofrece tres modos:
    • Real — datos reales (no recomendado)
    • Mask — sustitución con generación automática
    • Block — bloqueo total de API
  4. Selecciona "Mask" para sustituir los datos
  5. Activa la opción "Dynamic battery simulation" — esta es una característica única de Multilogin que imita el cambio realista del nivel de batería a lo largo del tiempo
  6. Configura los parámetros de simulación:
    • Nivel inicial: nivel de carga inicial (50-95%)
    • Tasa de descarga: velocidad de descarga en porcentaje por hora (2-8% dependiendo del "tipo de dispositivo")
    • Comportamiento de carga: cómo se comporta el dispositivo al cargar

Multilogin también permite sincronizar Battery API con otros parámetros. Por ejemplo, si emulas una laptop antigua con una batería débil, Multilogin ajustará automáticamente una mayor velocidad de descarga y menor capacidad.

GoLogin — opción económica

GoLogin es una alternativa más asequible (desde $24/mes) con funciones básicas, pero suficientes de protección.

Configuración en GoLogin:

  1. Crea o abre un perfil en GoLogin
  2. Ve a "Quick Settings" → "Advanced"
  3. Busca la sección "Battery"
  4. Por defecto, GoLogin utiliza el modo "Noise" — añade desviaciones aleatorias a los datos reales. ¡Esto no es suficiente para un serio multi-cuentas!
  5. Cambia al modo "Custom" y establece valores únicos para cada perfil
  6. Utiliza la función "Randomize" para generar automáticamente diferentes valores

Importante restricción de GoLogin: a diferencia de Multilogin, GoLogin no tiene la función de simulación dinámica de la batería. El nivel de carga permanece estático durante toda la sesión. Esto puede ser sospechoso para plataformas que rastrean el cambio de batería a lo largo del tiempo (TikTok, Facebook).

Recomendaciones generales para configurar Battery API

Independientemente del navegador anti-detección que elijas, sigue estas reglas:

  • Unicidad para cada perfil — nunca uses los mismos valores de Battery API para diferentes cuentas
  • Valores realistas — evita valores extremos (5% o 100%). Rango óptimo: 40-90%
  • Correspondencia con el tipo de dispositivo — si emulas un dispositivo móvil, utiliza menor capacidad de batería. Para laptops — mayor
  • Tiempo lógico de descarga — si el nivel de carga es 80%, el tiempo hasta la descarga completa no puede ser de 1 hora. Debe ser de 4-8 horas para realismo
  • Alternancia del estado de carga — para diferentes perfiles cambia el estado entre "charging" y "not charging"
  • Actualización periódica — cada 1-2 semanas cambia los valores de Battery API en los perfiles, imitando el envejecimiento natural de la batería

Casos reales: cuándo Battery API lleva a baneos

Revisemos ejemplos reales de la práctica de arbitrajistas y especialistas en SMM, cuando ignorar el fingerprinting de Battery API llevó a problemas serios.

Caso 1: Chain-ban de 15 cuentas de Facebook Ads

Situación: Un arbitrajista estaba manejando 15 cuentas publicitarias de Facebook Ads para la venta. Usó Dolphin Anty, proxies residenciales de calidad, creatividades únicas y páginas de destino. Todas las cuentas pasaron la moderación, se cargaron tarjetas, se lanzaron campañas de prueba.

Error: En la configuración de Dolphin Anty, todos los perfiles tenían el modo de Battery API "Real" (por defecto). Todas las 15 cuentas funcionaban desde una MacBook Pro.

Resultado: Tres días después del lanzamiento de la publicidad, todas las 15 cuentas fueron bloqueadas en un plazo de 2 horas. La razón: Facebook detectó el mismo fingerprint de Battery API en todas las cuentas. Incluso después de apelaciones, las cuentas no fueron restauradas. Las pérdidas ascendieron a aproximadamente $3,000 (costo de las cuentas + presupuestos cargados).

Conclusión: SIEMPRE configura un Battery API único para cada perfil, incluso si usas proxies de calidad.

Caso 2: Shadowban de 20 cuentas de Instagram de una agencia de SMM

Situación: Una agencia de SMM manejaba 20 cuentas de Instagram de clientes (perfiles de negocio con 10k-50k seguidores). Usaron AdsPower, trabajaron desde una computadora de oficina en dos turnos (2 gerentes de SMM).

Error: La configuración de Battery API estaba en modo "Automatic", pero AdsPower generó valores muy similares para todos los perfiles (todos mostraban un nivel de carga en el rango de 75-78%).

Resultado: Gradualmente (durante 2 semanas), todos los cuentas comenzaron a perder alcance. Las Stories solo se mostraban al 5-10% de los seguidores en lugar del 30-40% habitual. Las publicaciones dejaron de aparecer en recomendaciones. Un shadowban clásico. La recuperación tomó un mes: tuvieron que hacer una pausa en la actividad, cambiar todos los parámetros de fingerprint y usar proxies móviles.

Conclusión: No confíes en la generación automática: verifica que los valores de Battery API realmente difieran entre perfiles.

Caso 3: Bloqueo de la cuenta de TikTok Ads por "actividad sospechosa"

Situación: Un arbitrajista lanzó publicidad en TikTok Ads, utilizó GoLogin con proxies configurados. La cuenta fue creada, verificada, y se cargó una tarjeta corporativa de $5,000.

Error: En GoLogin se activó el modo Battery API "Noise", que añade pequeñas desviaciones aleatorias a los datos reales. El problema es que el arbitrajista trabajaba desde una laptop que siempre estaba conectada a la corriente (charging = true, level = 100%). Incluso con "ruido", estos datos seguían siendo sospechosamente estables.

Resultado: TikTok bloqueó la cuenta publicitaria después de 5 días con la justificación de "actividad sospechosa detectada". La apelación no ayudó. Tuvo que crear una nueva cuenta, pero esta vez con un Battery API configurado correctamente (modo "Custom" con valores que cambian periódicamente).

Conclusión: El modo "Noise" es insuficiente para la protección. Utiliza una sustitución completa (Custom/Mask) con valores realistas que cambian.

Lista de verificación para un trabajo seguro con multi-cuentas

Resumimos y elaboramos una lista de verificación práctica para protegerse contra el fingerprinting de Battery API y otros métodos de seguimiento.

Configuración del navegador anti-detección

  • ✅ Utiliza el modo Custom/Mask para Battery API, no Real o Noise
  • ✅ Establece valores únicos de nivel de carga para cada perfil (diferencia mínima de 10-15%)
  • ✅ Alterna el estado de carga (charging/not charging) entre perfiles
  • ✅ Si el navegador soporta simulación dinámica (Multilogin) — asegúrate de activarla
  • ✅ Configura el cambio automático de Battery API al iniciar cada perfil
  • ✅ Verifica otros parámetros de fingerprint: Canvas, WebGL, AudioContext, lista de fuentes
  • ✅ Utiliza diferentes User-Agent y resoluciones de pantalla para diferentes perfiles

Trabajo con proxies

  • ✅ Utiliza proxies residenciales de calidad para plataformas críticas (Facebook Ads, TikTok Ads)
  • ✅ Para Instagram y TikTok considera proxies móviles — son menos propensos a bloqueos
  • ✅ Un proxy = una cuenta. No uses una misma IP para varios perfiles
  • ✅ Asegúrate de que la zona horaria en el navegador coincida con la geolocalización del proxy
  • ✅ Verifica los proxies para fugas de WebRTC y DNS

Patrones de comportamiento

  • ✅ No trabajes con todas las cuentas al mismo tiempo — haz pausas entre sesiones
```