Imagen del scraper LinkedIn Ad LibraryAnuncios B2B y transparencia en la UE

LinkedIn Ad Library Scraper.

Mira cómo otras empresas se anuncian a profesionales. Compara ofertas y formatos y usa los datos disponibles de la UE para estudiar audiencias y mercados.

Ejecutar en Apify

Cómo puedes usar este scraper.

Prueba estos ejemplos para marketing, crecimiento y análisis de la competencia.

01

Compara ofertas B2B antes de una campaña

Para una campaña SaaS, sigue tres competidores y clasifica sus anuncios como demos, webinars, informes u ofertas de producto. Compara promesas y llamadas a la acción antes de elegir una prueba de captación.

Conserva una comparación de ofertas con textos, enlaces creativos e ideas de prueba.

02

Investiga las audiencias y mercados de un anunciante

Para anuncios con datos de la UE, revisa segmentación y porcentajes de impresiones por país. Separa lo que publica LinkedIn de tus suposiciones sobre la audiencia.

Redacta un informe con fuentes y conserva los rangos de impresiones como rangos.

03

Haz una auditoría de agencia más concreta

Revisa anuncios públicos, formatos y páginas de destino de un posible cliente. Usa sus ejemplos para preguntar por la coherencia de los mensajes y los objetivos de campaña.

Prepara una auditoría creativa breve con los anuncios del posible cliente como referencias.

DE LA PRIMERA EJECUCIÓN A UN FLUJO RECURRENTE

Tu primera ejecución, paso a paso.

  1. Abre el Actor en Apify, entra en Input y cambia al editor JSON para pegar una configuración.
  2. Sustituye HubSpot por el nombre que muestra LinkedIn. Empieza con exactAdvertiserMatch true. Si no devuelve resultados, prueba false y revisa los nombres antes de aceptar coincidencias más amplias.
  3. Elige DE para una pequeña muestra de la UE, maxAds 30 y scrapeAdDetails false. Tras confirmar al anunciante, activa los detalles para recopilar pagador, fechas, segmentación e impresiones disponibles.
  4. Inicia la ejecución y revisa el registro. Comprueba qué objetivos y filtros se interpretaron antes de concluir que no hay datos.
  5. Abre Storage → Dataset, revisa varios registros y exporta JSON para datos anidados o CSV para una primera revisión en una hoja.
Configuración inicial
{
  "advertisers": ["HubSpot"],
  "countries": ["DE"],
  "maxAds": 30,
  "exactAdvertiserMatch": true,
  "scrapeAdDetails": false
}

Pégalo en el editor JSON del Actor. Cambia los ejemplos por tus propios objetivos antes de ejecutar.

Consulta el formulario actual en Apify

Elige cómo buscar.

Puedes combinar nombres de anunciantes y palabras clave para acotar una búsqueda, o reutilizar una URL filtrada de la biblioteca de LinkedIn. La coincidencia exacta es opcional y los detalles de anuncios de la UE son más completos que en muchos otros mercados.

Método de búsquedaCuándo usarloQué cambia
Nombre del anunciante o marcaCuándo usarloTienes una lista de competidores.Qué cambiaNombres de empresas de LinkedIn o sus enlaces. Por defecto la coincidencia amplia puede incluir socios y agencias. Activa exactAdvertiserMatch para el anunciante exacto.
Búsqueda por palabras claveCuándo usarloQuieres encontrar resultados relevantes antes de elegir objetivos concretos.Qué cambiaPalabras del contenido. Con advertisers, se busca cada palabra para cada anunciante. Sin anunciantes, descubre anuncios de varias empresas.
URLs de la biblioteca de anunciosCuándo usarloYa configuraste la búsqueda en el sitio de origen.Qué cambiaEnlaces de búsqueda o detalle de LinkedIn Ad Library. Las búsquedas conservan filtros; un enlace de detalle obtiene un anuncio. No es una página de empresa ni búsqueda de empleo.

La diferencia importante

Añade pagador, CTA, enlaces, medios y fechas, impresiones y segmentación disponibles para la UE. Una solicitud extra por anuncio. Otros mercados pueden tener campos vacíos.

Compara el scraper relacionado

Todos los parámetros, explicados.

Usa estos nombres exactos en JSON. En el formulario de Apify, introduce cada elemento de las listas por separado y mantén números y booleanos en su tipo correcto.

Default y prefill son distintos. El valor por defecto se aplica si omites un ajuste; el prellenado es un ejemplo introducido en el formulario de Apify. Revisa objetivos y límites antes de cada ejecución. Algunos ajustes no tienen valor por defecto en el esquema. Debes indicar al menos un objetivo admitido.

Objetivos y búsquedas3
advertisers
ListaEjemplo precargado: ["HubSpot"]

Nombres de empresas de LinkedIn o sus enlaces. Por defecto la coincidencia amplia puede incluir socios y agencias. Activa exactAdvertiserMatch para el anunciante exacto.

keywords
Lista

Palabras del contenido. Con advertisers, se busca cada palabra para cada anunciante. Sin anunciantes, descubre anuncios de varias empresas.

startUrls
Lista

Enlaces de búsqueda o detalle de LinkedIn Ad Library. Las búsquedas conservan filtros; un enlace de detalle obtiene un anuncio. No es una página de empresa ni búsqueda de empleo.

Mercados, fechas y filtros6
countries
Lista

Países donde se mostraron anuncios. Admite códigos, nombres y grupos como EU o DACH. Varios países forman una unión, no filas separadas; los detalles de la UE varían por anuncio.

dateRange
TextoPor defecto: all-time

Elige un periodo predefinido o custom-date-range, que usa startDate y endDate. Describe la difusión, no cuándo recopilaste el registro.

Valores JSON sugeridos
all-time last-30-days current-month current-year last-year custom-date-range
startDate
Texto

Inicio de un periodo personalizado, preferiblemente YYYY-MM-DD. Una fecha activa la búsqueda personalizada; usa también el dateRange correspondiente para mayor claridad.

endDate
Texto

Final del periodo personalizado. Usa YYYY-MM-DD o una fecha relativa como today. Mantén la misma ventana al comparar anunciantes.

sortBy
TextoPor defecto: newest

newest empieza por recientes; oldest por antiguos. Con maxAds o maxAdsPerSearch cambia la parte obtenida, no el tamaño del archivo.

Valores JSON sugeridos
newest oldest
exactAdvertiserMatch
Verdadero o falsoPor defecto: false

Conserva nombres coincidentes ignorando mayúsculas y puntuación. Úsalo para una marca concreta. Puede excluir filiales con otros nombres; revisa una muestra.

Límites, detalles y proxies6
maxAds
EnteroEjemplo precargado: 100

Límite de anuncios únicos de toda la ejecución, incluidos todos los objetivos y mercados. Empieza con 50. Si lo dejas vacío, una búsqueda amplia puede crecer mucho.

maxAdsPerSearch
Entero

Limita cada búsqueda anunciante-palabra clave. Combínalo con maxAds para que un anunciante grande no consuma todo. El límite global sigue prevaleciendo.

scrapeAdDetails
Verdadero o falsoPor defecto: true

Añade pagador, CTA, enlaces, medios y fechas, impresiones y segmentación disponibles para la UE. Una solicitud extra por anuncio. Otros mercados pueden tener campos vacíos.

maxConcurrency
EnteroPor defecto: 3

De 1 a 10 búsquedas paralelas de anunciantes o palabras clave, cada una con sus sesiones proxy. Sin proxy utilizable, las solicitudes van una a una.

detailConcurrency
EnteroPor defecto: 4

De 1 a 10 solicitudes de detalle paralelas por búsqueda. Es distinto de maxConcurrency. Subir ambos multiplica trabajo y demanda de proxy; empieza con los valores predeterminados.

proxyConfiguration
ObjetoPor defecto: {"useApifyProxy":true}Ejemplo precargado: {"useApifyProxy":true}

Un proxy reparte el límite por IP entre sesiones. Residencial suele ser más fiable que datacenter. Ante bloqueos baja concurrencia y revisa el proxy, no solo repitas más rápido.

Ajustes avanzados y recuperación3
proxyRotations
EnteroPor defecto: 4

Reintenta solicitudes rechazadas con una sesión proxy nueva. Más intentos pueden superar bloqueos temporales, pero añaden tiempo y tráfico. Mantén el valor predeterminado salvo que el registro indique un motivo para cambiarlo.

resume
Verdadero o falsoPor defecto: true

Guarda el progreso aproximadamente cada 30 segundos para continuar tras un reinicio o migración. Déjalo activado.

continueFromLastRun
Verdadero o falsoPor defecto: false

Continúa el trabajo pendiente de la ejecución anterior con la misma entrada. Los resultados anteriores quedan en su dataset. Usa false para una colección nueva o periódica.

Esta referencia sigue los campos del Actor. Revisa el formulario actual antes de cambiar un flujo de producción. Consulta el formulario actual en Apify.

Configuraciones listas para copiar.

Cada ejemplo es una ejecución independiente. Empieza con poco, revisa los resultados y amplía después. Adapta objetivos, países y fechas a tu pregunta.

Auditoría de un anunciante en la UE

Recopila los últimos 30 días de un anunciante exacto en Alemania, con detalles. Conserva pagador e impresiones disponibles junto a enlaces de origen. No rellenes campos ausentes con valores supuestos.

Auditoría de un anunciante en la UE
{
  "advertisers": ["HubSpot"],
  "countries": ["DE"],
  "dateRange": "last-30-days",
  "exactAdvertiserMatch": true,
  "maxAds": 50,
  "scrapeAdDetails": true
}

Descubre mensajes entre anunciantes

Busca tres temas en la UE sin restringir anunciantes. Cada búsqueda tiene un máximo de 25 anuncios, así que puedes obtener hasta 75 únicos aunque el límite global sea 100. La coincidencia entre búsquedas puede reducirlo más.

Descubre mensajes entre anunciantes
{
  "keywords": ["marketing automation", "sales CRM", "lead generation"],
  "countries": ["EU"],
  "maxAds": 100,
  "maxAdsPerSearch": 25,
  "scrapeAdDetails": false
}

Compara un periodo de campaña fijo

Compara dos anunciantes en Alemania y Francia durante septiembre de 2026. Los países forman un filtro combinado. Cambia las fechas, revisa coincidencias amplias y usa el límite por búsqueda para equilibrar la muestra.

Compara un periodo de campaña fijo
{
  "advertisers": ["HubSpot", "Salesforce"],
  "countries": ["DE", "FR"],
  "dateRange": "custom-date-range",
  "startDate": "2026-09-01",
  "endDate": "2026-09-30",
  "maxAds": 100,
  "maxAdsPerSearch": 50,
  "exactAdvertiserMatch": false,
  "scrapeAdDetails": true
}

Ejecuta, revisa, exporta y repite.

Guarda IDs y nombres con texto, enlaces y detalles disponibles. En la UE puede haber pagador, impresiones por país y segmentación; otros mercados ofrecen menos. Conserva JSON anidado como origen, aplana campos para informes y distingue ausencias de ceros.

  1. Revisa el dataset y el registro SUMMARY. Compara el total con tu límite, revisa entradas fallidas u omitidas y verifica algunos enlaces originales.
  2. Conserva los IDs originales y añade collected_at y run_id al guardar. Usa CSV para columnas planas y JSON para arrays o detalles anidados.
  3. Guarda la configuración probada como Apify Task y prográmala. Para capturas periódicas, deja continueFromLastRun en false. Elimina duplicados por ID conservando la fecha de cada observación.
  4. En Make o n8n, espera una ejecución correcta, obtiene el dataset y mapea campos a Sheets o tu almacén. Alimenta Looker Studio mediante una tabla de informes y usa dbt para transformar y validar modelos.
  5. El mismo JSON sirve con la API de Actors de Apify. En Claude con Apify MCP, indica este Actor, pide que revise el esquema y define objetivos, mercados y límites antes de ejecutar.

Reanudar no es obtener una captura nueva

resume protege la ejecución actual si Apify la reinicia. continueFromLastRun continúa una anterior con la misma configuración; sus registros siguen en el dataset anterior. Une ambos datasets y aumenta un límite ya alcanzado. Empieza de nuevo si quieres ver qué ha cambiado hoy.

Sigue las guías para Sheets, Claude, Looker y BigQuery
Ejecuta este Actor con la API

Guarda una configuración anterior como input.json. Define APIFY_TOKEN con tu token de Apify en la terminal y envía el archivo como cuerpo de la solicitud.

Inicia la ejecución
curl --fail-with-body --request POST \
  --url "https://api.apify.com/v2/actors/jmlp~linkedin-ad-library-scraper/runs" \
  --header "Authorization: Bearer $APIFY_TOKEN" \
  --header "Content-Type: application/json" \
  --data-binary @input.json

La respuesta contiene un ID de ejecución y defaultDatasetId, no resultados finales. Espera a que termine con éxito, define DATASET_ID con ese ID y recupera los elementos. Para datasets grandes, usa limit y offset para paginar.

Recupera el dataset
curl --fail-with-body \
  --url "https://api.apify.com/v2/datasets/$DATASET_ID/items?format=json" \
  --header "Authorization: Bearer $APIFY_TOKEN"

Referencia de la API de ejecución y exportación de Apify
Opciones de exportación del dataset

Cuando los resultados no cuadran.

Cambia un ajuste cada vez, mantén un límite bajo y revisa el resumen antes de ampliar.

Los resultados pertenecen a otro anunciante.

Conserva nombres coincidentes ignorando mayúsculas y puntuación. Úsalo para una marca concreta. Puede excluir filiales con otros nombres; revisa una muestra.

El resultado existe, pero faltan los campos detallados.

Añade pagador, CTA, enlaces, medios y fechas, impresiones y segmentación disponibles para la UE. Una solicitud extra por anuncio. Otros mercados pueden tener campos vacíos.

Las solicitudes de detalles empiezan a bloquearse.

Un proxy reparte el límite por IP entre sesiones. Residencial suele ser más fiable que datacenter. Ante bloqueos baja concurrencia y revisa el proxy, no solo repitas más rápido.

La ejecución terminó sin resultados

El éxito indica que el Actor terminó, no que la fuente devolviera datos. Revisa SUMMARY.inputProblem, SUMMARY.problem y el registro: pueden faltar objetivos, haber filtros inválidos o solicitudes rechazadas. Prueba un objetivo conocido con menos filtros.

Menos registros de lo esperado

Revisa límites globales, por búsqueda y por página, cobertura y duplicados. Varias búsquedas pueden encontrar el mismo registro. El total de la fuente puede incluir datos no disponibles públicamente. Revisa los trabajos pendientes antes de dar el dataset por completo.

Usa los resultados en tus herramientas.

Google Sheets

Añade ad_id, advertiser_name, format, headline, CTA y enlace de destino. Incluye categorías de oferta y notas. Guarda rangos como texto y porcentajes por país en campos separados.

Leer la guía
Claude + MCP

Pide a Claude que agrupe ofertas y resuma la segmentación publicada citando ad_library_url. Debe separar las suposiciones sobre audiencias de los campos reales.

Leer la guía
Looker Studio

Compara formatos y ofertas por anunciante. Muestra límites inferior y superior de impresiones como rangos y añade un filtro de datos de la UE.

Leer la guía
BigQuery + dbt

Guarda observaciones fechadas por ad_id. Pon porcentajes por país y tarjetas de carrusel en tablas secundarias; guarda el pagador separado del anunciante.

Leer la guía
Copiar un prompt para Claude
Prompt para Claude + Apify MCP
Comprueba jmlp/linkedin-ad-library-scraper y recopila hasta 50 anuncios de HubSpot en DE con detalles y coincidencia exacta del anunciante. Agrupa ofertas y CTA, cita ad_library_url y resume solo los datos de segmentación e impresiones presentes. No deduzcas gasto ni conversiones.

Los campos que obtendrás.

Conserva la hora de recopilación y los ID originales. Los necesitarás para comprobar el origen de un resultado o compararlo con otra ejecución.

Antes de sacar conclusiones

LinkedIn publica fechas, rangos de impresiones y segmentación para anuncios de la UE; otros pueden no tenerlos. Un indicador no revela todos los valores de audiencia. Los nombres pueden incluir agencias o socios sin exactAdvertiserMatch. Las impresiones no indican conversiones ni gasto.

ad_id / ad_library_url
ID estable y anuncio público original.
advertiser_name / paid_by
Anunciante y entidad que pagó el anuncio.
body / headline / cta_text
Texto creativo y acción publicados.
image_urls / video_urls / carousel_cards
Archivos creativos y contenido del carrusel disponibles.
impressions / impressions_by_country
Rangos de impresiones de la UE y porcentajes por país publicados.
targeting / shown_in_eu
Segmentación publicada e indicación de datos de transparencia de la UE.

Preguntas frecuentes.

¿Necesito una cuenta de LinkedIn o cookies?

No. Este Actor lee la biblioteca pública de anuncios de LinkedIn. Necesitas una cuenta de Apify para ejecutarlo, pero no iniciar sesión en LinkedIn ni compartir cookies.

¿Por qué faltan impresiones o segmentación?

LinkedIn publica estos datos para anuncios mostrados en la UE. Revisa shown_in_eu y si estaban activados los detalles antes de interpretar los valores ausentes.

Fuente y detalles actuales del producto: Actor LinkedIn Ad Library de JMLP en Apify.

Otros scrapers
que podrían servirte.

Hablemos de
tu proyecto.

Cuéntame qué necesitas recopilar o entender. Puedo ayudarte con un scraper a medida, un pipeline o el análisis.

Hablemos de tu proyecto