Cómo encontrar leads en Twitter
Encontrar leads en Twitter (X) toma cuatro pasos: buscar posts públicos con frases de intención de compra como "any recommendations for" o "alternative to", conservar a los autores cuyas bios coinciden con tu comprador, puntuarlos y responder en público dentro de las 48 horas del post.
Respuesta corta: Los mejores leads en X piden una herramienta, dejan a un competidor o describen en público el problema que resuelves; las bios y los seguidores de un rival amplían el grupo. Para correrlo como código, usa Sorsa API: POST /search-tweets devuelve unos 20 posts con el perfil completo de sus autores por solicitud, desde $0.07 por 1,000, y 100 solicitudes gratis cubren los primeros 2,000.
- Endpoint
POST /search-tweets- Tamaño de página
- unos 20 posts por solicitud
- Precio
- desde $0.07 por 1,000
#De dónde salen los leads en Twitter
Un lead en X es una cuenta pública que ha mostrado un motivo para comprar: un post que pide una recomendación, una queja sobre la herramienta que usa, o una bio que nombra el rol al que vendes. No necesitas tener seguidores propios para encontrar a estas personas, y no necesitas su correo para empezar una conversación. Para ver quién se describe como tu comprador, la herramienta gratuita Búsqueda de bios de Twitter encuentra cuentas por las palabras de sus bios, directo en el navegador.
La generación de leads en Twitter funciona de dos maneras. El trabajo entrante, como hilos útiles y un perfil claro, atrae gente hacia ti durante meses. El trabajo saliente encuentra a las personas que ya dicen que necesitan algo, hoy. Esta guía cubre la segunda, porque funciona desde el primer día y cada paso puede correr como código:
-
Busca intención. Corre búsquedas de intención de compra para tu categoría y los nombres de tus competidores, limitadas a los últimos días.
-
Amplía el grupo. Suma cuentas cuyas bios nombran a tu comprador, los seguidores de un competidor, miembros de Comunidades y Listas relevantes, y personas que responden a posts de tu nicho.
-
Puntúa y elimina duplicados. Une todo por ID de usuario y da puntos por intención, rol, un sitio web en la bio y actividad real.
-
Responde en público. Contesta los posts más calientes en uno o dos días con algo útil, y deja que el lector llegue a ti por tu perfil.
Cada fuente alimenta un grupo con clave de ID de usuario; la puntuación decide a quién se le responde hoy.
Los formatos de pago son otro canal. X detuvo sus Lead Generation Cards en 2017 y anunció Lead Gen Ads en agosto de 2026; ambos recogen datos de personas que aceptan en un anuncio. El método de abajo encuentra a personas que nunca vieron tu anuncio.
#12 búsquedas de intención de compra que encuentran a personas listas para comprar
La intención de compra aparece en seis tipos de posts públicos, y dos búsquedas para cada tipo atrapan la mayoría de las formas en que la gente lo expresa. Las señales más fuertes son una petición directa y la decisión de dejar a un competidor, porque la persona tiene en mente un presupuesto y un plazo.
| Señal | Cómo suena el post | Fuerza |
|---|---|---|
| Pide una herramienta | "¿Alguien me recomienda un software de facturación para un equipo de 10 personas?" | La más alta |
| Deja a un competidor | "El mes que viene dejamos nuestra herramienta actual, ¿qué otra hay?" | La más alta |
| Listo para gastar | "Pagaría con gusto por algo que cobre por mí las facturas atrasadas." | Alta |
| Se queja de un competidor | "Nuestra herramienta de facturación volvió a subir los precios." | Alta |
| Describe el problema | "Pasé tres horas esta semana cobrando facturas atrasadas." | Media |
| Habla con un competidor en público | Una respuesta a la cuenta del rival: "Sigo esperando soporte para esto." | Media |
Pide una herramienta
- Cómo suena el post
- "¿Alguien me recomienda un software de facturación para un equipo de 10 personas?"
- Fuerza
- La más alta
Deja a un competidor
- Cómo suena el post
- "El mes que viene dejamos nuestra herramienta actual, ¿qué otra hay?"
- Fuerza
- La más alta
Listo para gastar
- Cómo suena el post
- "Pagaría con gusto por algo que cobre por mí las facturas atrasadas."
- Fuerza
- Alta
Se queja de un competidor
- Cómo suena el post
- "Nuestra herramienta de facturación volvió a subir los precios."
- Fuerza
- Alta
Describe el problema
- Cómo suena el post
- "Pasé tres horas esta semana cobrando facturas atrasadas."
- Fuerza
- Media
Habla con un competidor en público
- Cómo suena el post
- Una respuesta a la cuenta del rival: "Sigo esperando soporte para esto."
- Fuerza
- Media
Cada búsqueda tiene tres partes: la petición, tu categoría o el nombre de un competidor, y filtros que eliminan el ruido. lang:en conserva un idioma, -filter:retweets descarta copias del mismo post, within_time:7d conserva la última semana y -filter:links elimina la mayoría de los posts promocionales, ya que una pregunta genuina rara vez lleva un enlace. Excluir el handle del propio competidor con -from: mantiene su marketing fuera de tus resultados. La lista completa de filtros está en nuestra guía de operadores de búsqueda de Twitter.
Escribe tu categoría, un competidor y el problema con las palabras de tus compradores, y el constructor escribe las 12 búsquedas. Pega cualquiera de ellas en la búsqueda de X para leer los resultados a mano, o envíalas a la API en la sección siguiente.
Piden una herramienta
asks("any recommendations" OR "can anyone recommend" OR "suggestions for") "invoicing software" -filter:links lang:en -filter:retweets within_time:7dneeds("looking for a" OR "in the market for" OR "need a good") "invoicing software" -filter:links lang:en -filter:retweets within_time:7dDejan a un competidor
switching"ExampleBooks" ("switching from" OR "moving off" OR cancelled OR canceling) -from:examplebooks_app lang:en -filter:retweets within_time:7dalternatives("alternative to ExampleBooks" OR "ExampleBooks alternative" OR "replacement for ExampleBooks") -from:examplebooks_app lang:en -filter:retweets within_time:7dListos para gastar
budget("happy to pay" OR "willing to pay" OR "budget for") "invoicing software" lang:en -filter:retweets within_time:7dcomparing("ExampleBooks vs" OR "vs ExampleBooks") -from:examplebooks_app lang:en -filter:retweets within_time:7dSe quejan de un competidor
pricing"ExampleBooks" (expensive OR "raised prices" OR "price increase") -from:examplebooks_app lang:en -filter:retweets within_time:7doutage"ExampleBooks" (down OR outage OR "not working") -from:examplebooks_app lang:en -filter:retweets within_time:7dDescriben el problema
problem"late invoices" ("spent hours" OR "so tired of" OR "every week") lang:en -filter:retweets within_time:7dhow-to("how do you" OR "how do I") "late invoices" -filter:links lang:en -filter:retweets within_time:7dHablan con un competidor en público
to-rivalto:examplebooks_app (help OR issue OR "still waiting") lang:en -filter:retweets within_time:7dat-rival@examplebooks_app ("anyone else" OR "is it just me") -from:examplebooks_app lang:en -filter:retweets within_time:7dDos búsquedas para cada una de las seis señales, escritas para tu mercado; cada una se ejecuta tal cual en la búsqueda de X o por la API.
Para tener en cuenta
Lee los primeros 20 resultados de una búsqueda nueva antes de automatizarla. Si más de unos pocos son proveedores, bromas u ofertas de empleo, afina las palabras de la categoría o agrega exclusiones como
-hiringy-joby los nombres de otros proveedores de tu espacio.
#Corre las búsquedas con Sorsa API
Para correr estas búsquedas todos los días sin navegador, usa Sorsa API, una API y scraper de Twitter (X): POST /search-tweets (se abre en una pestaña nueva) acepta los mismos operadores que la Búsqueda avanzada de X y devuelve unos 20 posts por solicitud, cada uno con el perfil completo de su autor, desde $0.07 por 1,000 posts. Necesitas una clave API en un header, sin cuenta de desarrollador de X y sin OAuth, y todos los planes corren a 20 solicitudes por segundo.
-
Consigue una clave. Regístrate y copia tu clave API del dashboard. Las primeras 100 solicitudes son gratis y nunca vencen.
-
Corre una búsqueda. Envía la consulta en el cuerpo de la solicitud; con
orderenlatestse devuelven primero los posts más recientes. Agrega los filtros del constructor a la misma cadena de consulta.Terminal curl -X POST "https://api.sorsa.io/v3/search-tweets" \ -H "ApiKey: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "query": "\"any recommendations\" \"invoicing software\" lang:en", "order": "latest" }'Response200 OK { "tweets": [ { "id": "2116173807612858385", "full_text": "Can anyone recommend invoicing software for a small team?", "created_at": "2026-10-30T14:22:07Z", "lang": "en", "likes_count": 4, "retweet_count": 0, "reply_count": 7, "quote_count": 0, "view_count": 812, "is_reply": false, "user": { "id": "1710249922130870349", "username": "brightledger_studio", "display_name": "Brightledger Studio", "description": "Founder at Brightledger Studio. Design for fintech.", "location": "Austin, TX", "bio_urls": ["https://example.com"], "followers_count": 2140, "followings_count": 388, "tweets_count": 3912, "created_at": "2023-10-06T11:05:31Z", "verified": false, "protected": false } } ], "next_cursor": "DAADDAABCgABHV7Bk1OAJxEKAAIdXsDWr9ZQoAgAAwAAAAIAAA" } -
Corre las 12 cada mañana. El script envía cada búsqueda, sigue
next_cursorhasta tres páginas y conserva una entrada por cuenta con todas las señales con las que coincidió esa cuenta. Pega las búsquedas del constructor enSEARCHES.Python import requests BASE = "https://api.sorsa.io/v3" HEADERS = {"ApiKey": "YOUR_API_KEY"} TAIL = " lang:en -filter:retweets within_time:7d" # label -> search; paste all 12 from the builder above SEARCHES = { "asks": '("any recommendations" OR "can anyone recommend") ' '"invoicing software" -filter:links', "switching": '"ExampleBooks" ("switching from" OR "moving off" ' 'OR cancelled) -from:examplebooks_app', } def search(query, pages=3): body, posts = {"query": query + TAIL, "order": "latest"}, [] for _ in range(pages): r = requests.post(f"{BASE}/search-tweets", headers=HEADERS, json=body, timeout=30) r.raise_for_status() page = r.json() posts += page.get("tweets") or [] if not page.get("next_cursor"): break body["next_cursor"] = page["next_cursor"] return posts def add(pool, user, signal, post_url=None): lead = pool.setdefault(user["id"], {"user": user, "signals": set(), "posts": []}) lead["signals"].add(signal) if post_url: lead["posts"].append(post_url) pool = {} # one entry per account, keyed by user ID for signal, query in SEARCHES.items(): for post in search(query): user = post["user"] if not user.get("protected"): url = f"https://x.com/{user['username']}/status/{post['id']}" add(pool, user, signal, url) print(len(pool), "accounts matched")
Una respuesta 429 significa más de 20 solicitudes en un segundo: espera un segundo y envíala de nuevo. Un 403 significa que falta la clave o se quedó sin solicitudes. Las solicitudes fallidas nunca se cobran.
#Encuentra a tu público objetivo en Twitter
Los posts de intención atrapan a las personas en el momento de la necesidad; tu público objetivo es el grupo más grande que encaja con tu comprador y puede necesitarte el próximo trimestre. Cuatro fuentes construyen ese grupo, y cada una devuelve perfiles públicos completos o compactos que puedes puntuar con las mismas reglas.
| Fuente | Qué encuentra | Endpoint de Sorsa API | Por solicitud |
|---|---|---|---|
| Bios | Cuentas que nombran el rol, el nicho o el tipo de empresa de tu comprador | POST /search-users | una página de perfiles |
| Seguidores de un competidor | Personas que ya vigilan tu categoría | GET /followers, GET /verified-followers | hasta 200 perfiles |
| Comunidades y Listas | Personas agrupadas por tema por ellas mismas o por un curador | POST /community-members, GET /list-members | una página de miembros |
| Personas que interactúan con un post | Quién respondió, citó o repostió un post de tu nicho | POST /comments, POST /quotes, POST /retweeters | unos 20 |
Bios
- Qué encuentra
- Cuentas que nombran el rol, el nicho o el tipo de empresa de tu comprador
- Endpoint de Sorsa API
POST /search-users- Por solicitud
- una página de perfiles
Seguidores de un competidor
- Qué encuentra
- Personas que ya vigilan tu categoría
- Endpoint de Sorsa API
GET /followers,GET /verified-followers- Por solicitud
- hasta 200 perfiles
Comunidades y Listas
- Qué encuentra
- Personas agrupadas por tema por ellas mismas o por un curador
- Endpoint de Sorsa API
POST /community-members,GET /list-members- Por solicitud
- una página de miembros
Personas que interactúan con un post
- Qué encuentra
- Quién respondió, citó o repostió un post de tu nicho
- Endpoint de Sorsa API
POST /comments,POST /quotes,POST /retweeters- Por solicitud
- unos 20
Busca en las bios el rol al que vendes
POST /search-users (se abre en una pestaña nueva) encuentra cuentas por una palabra clave o frase en su perfil, así que una consulta como "fractional CFO" o "Shopify agency" devuelve a las personas que se describen así. La misma búsqueda encuentra candidatos para una contratación: pon el cargo en la consulta en lugar del rol del comprador.
curl -X POST "https://api.sorsa.io/v3/search-users" \
-H "ApiKey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "fractional CFO"}'
Crea una lista de leads con los seguidores de un competidor
Los seguidores de un competidor son personas que ya prestan atención a tu categoría, lo que hace de la lista una base sólida para prospectar. GET /followers (se abre en una pestaña nueva) devuelve hasta 200 de ellos por solicitud con perfiles completos, así que los seguidores de una cuenta de 10K seguidores cuestan desde $0.07 en Sorsa API frente a $100 en la API oficial de X. GET /verified-followers (se abre en una pestaña nueva) devuelve solo los verificados, una lista corta que se inclina hacia empresas y profesionales activos.
Conserva solo los seguidores cuyas bios coinciden con tu comprador, y luego puntúalos. Un seguidor muestra interés, no intención, así que un seguidor sin ningún post que coincida debe quedar por debajo de cualquiera que pidió una herramienta. La exportación completa con paginación y CSV está en nuestra guía de la API de seguidores de Twitter, y el seguimiento del crecimiento de los rivales en el tiempo se cubre en la guía de análisis de competidores en Twitter.
Obtén a los miembros de Comunidades y Listas
Las personas que se unen a una Comunidad de X sobre tu tema, o que están en una Lista curada de tu nicho, se han agrupado por ti. POST /community-members (se abre en una pestaña nueva) recibe un ID o enlace de Comunidad y devuelve perfiles compactos de miembros: handle, nombre visible y verificación. Enriquécelos con GET /info-batch (se abre en una pestaña nueva), 100 cuentas por solicitud, para obtener bios y cantidades para la puntuación. GET /list-members (se abre en una pestaña nueva) devuelve perfiles completos de cada cuenta de una Lista; la guía de la API de Listas de Twitter muestra cómo encontrar buenas Listas y leerlas como un solo feed.
Reúne a las personas que interactúan con un post de tu nicho
Un post de una voz del sector sobre el problema que resuelves reúne respuestas de personas que viven con él. POST /comments (se abre en una pestaña nueva) devuelve sus respuestas de a 20 por solicitud, ordenadas por relevancia, fecha o likes; POST /quotes (se abre en una pestaña nueva) devuelve los posts que lo citaron; POST /retweeters (se abre en una pestaña nueva) devuelve las cuentas que lo repostearon. Quién dio like a un post no es público en X, así que ninguna API lo devuelve: las respuestas, citas y reposts son las huellas públicas del interés.
Suma estas fuentes al mismo grupo. Una cuenta encontrada por dos o más fuentes, por ejemplo un seguidor de un competidor que además pidió una herramienta esta semana, va al principio de la lista.
def users(method, path, params, pages=5):
"""Page through an endpoint that returns {users, next_cursor}."""
params, found = dict(params), []
for _ in range(pages):
if method == "GET":
r = requests.get(f"{BASE}{path}", headers=HEADERS,
params=params, timeout=30)
else:
r = requests.post(f"{BASE}{path}", headers=HEADERS,
json=params, timeout=30)
r.raise_for_status()
page = r.json()
found += page.get("users") or []
if not page.get("next_cursor"):
break
params["next_cursor"] = page["next_cursor"]
return found
SOURCES = [
("bio", "POST", "/search-users", {"query": "fractional CFO"}),
("rival", "GET", "/followers", {"username": "examplebooks_app"}),
("list", "GET", "/list-members", {"list_id": "1850824826680246284"}),
]
for source, method, path, params in SOURCES:
for user in users(method, path, params):
if not user.get("protected"):
add(pool, user, source)
#Califica y puntúa cada lead
Puntúa cada cuenta con los campos públicos que lleva todo perfil, para que la lista se ordene sola: primero la intención, luego el encaje, luego las señales de una persona real y activa. La rúbrica de abajo es un punto de partida; después de tus primeras 50 respuestas, sube los puntos de las señales que llevaron a conversaciones.
| Señal | Campo del que sale | Puntos |
|---|---|---|
| Pidió una herramienta, una alternativa o un precio, o está dejando a un competidor | el post que coincidió | +3 |
| Se quejó, describió el problema o comparó opciones (una pregunta de cómo hacerlo: +1) | el post que coincidió | +2 |
| Una palabra de rol en la bio: founder, CEO, owner, head of | description | +2 |
| Un sitio web en la bio | bio_urls | +1 |
| Entre 50 y 50K seguidores | followers_count | +1 |
| Más de 90 días de antigüedad con 100 posts o más | created_at, tweets_count | +1 |
| Encontrada por dos o más búsquedas o fuentes | tu grupo | +2 |
Pidió una herramienta, una alternativa o un precio, o está dejando a un competidor
- Campo del que sale
- el post que coincidió
- Puntos
- +3
Se quejó, describió el problema o comparó opciones (una pregunta de cómo hacerlo: +1)
- Campo del que sale
- el post que coincidió
- Puntos
- +2
Una palabra de rol en la bio: founder, CEO, owner, head of
- Campo del que sale
description- Puntos
- +2
Un sitio web en la bio
- Campo del que sale
bio_urls- Puntos
- +1
Entre 50 y 50K seguidores
- Campo del que sale
followers_count- Puntos
- +1
Más de 90 días de antigüedad con 100 posts o más
- Campo del que sale
created_at,tweets_count- Puntos
- +1
Encontrada por dos o más búsquedas o fuentes
- Campo del que sale
- tu grupo
- Puntos
- +2
Una puntuación de 7 o más es un lead caliente al que responder hoy, de 4 a 6 es tibio y va a una lista de seguimiento, y cualquier cosa menor se descarta. La banda de seguidores filtra tanto las cuentas desechables como las celebridades, que rara vez responden a proveedores. Para mirar más de cerca las cuentas vacías o automatizadas, las señales de nuestra guía de detección de bots en Twitter se conectan a la misma función.
Suma la puntuación y la exportación al mismo script. Escribe leads.csv con las mejores cuentas primero, listo para una hoja o una importación a un CRM.
import csv
import re
from datetime import datetime, timezone
ROLE = re.compile(r"\b(founder|co-founder|ceo|cfo|owner|head of)\b", re.I)
INTENT = {"asks": 3, "needs": 3, "switching": 3, "alternatives": 3,
"budget": 3, "pricing": 2, "outage": 2, "problem": 2,
"comparing": 2, "to-rival": 2, "at-rival": 2, "how-to": 1}
def score(lead):
u = lead["user"]
joined = datetime.fromisoformat(u["created_at"].replace("Z", "+00:00"))
age = (datetime.now(timezone.utc) - joined).days
points = max((INTENT.get(s, 0) for s in lead["signals"]), default=0)
points += 2 if ROLE.search(u.get("description") or "") else 0
points += 1 if u.get("bio_urls") else 0
points += 1 if 50 <= u.get("followers_count", 0) <= 50_000 else 0
points += 1 if age > 90 and u.get("tweets_count", 0) >= 100 else 0
points += 2 if len(lead["signals"]) >= 2 else 0
return points
with open("leads.csv", "w", newline="", encoding="utf-8") as f:
out = csv.writer(f)
out.writerow(["score", "tier", "handle", "bio", "website",
"signals", "post"])
for lead in sorted(pool.values(), key=score, reverse=True):
s, u = score(lead), lead["user"]
tier = "hot" if s >= 7 else "warm" if s >= 4 else "cold"
out.writerow([s, tier, u["username"], u.get("description", ""),
(u.get("bio_urls") or [""])[0],
" ".join(sorted(lead["signals"])),
(lead["posts"] or [""])[0]])
Los perfiles compactos de POST /community-members aún no tienen bio ni cantidades. Reúne sus ID y envíalos a GET /info-batch en grupos de 100 antes de puntuar, para que cada cuenta se juzgue con los mismos campos.
#Envía los leads puntuados a tu CRM, Slack o una hoja
Una lista de leads sirve solo si alguien actúa sobre ella el mismo día, así que envía el nivel caliente a donde ya trabaja tu equipo. El CSV se importa tal cual a cualquier CRM u hoja de cálculo. Para un feed en vivo, programa el script una vez cada mañana y publica cada lead caliente nuevo en un canal de Slack con el handle, el post que coincidió, la señal y la puntuación.
Las herramientas sin código corren el mismo flujo sobre HTTP simple: un módulo HTTP en Make, Zapier, n8n o Pipedream llama a POST /search-tweets con tu header ApiKey, y los módulos siguientes filtran, puntúan y enrutan los resultados. Nuestra guía de la API de Twitter en n8n construye ese flujo paso a paso.
Guarda un archivo con los ID de los posts que ya viste y sáltalos en la corrida siguiente, para que nadie reciba una segunda respuesta de tu equipo. Un buen registro en el CRM contiene el handle, los enlaces del perfil y del post, la señal, la puntuación, el sitio web de la bio y la fecha en que encontraste al lead.
#Contacta en público y respeta las reglas
La respuesta que funciona en X es pública, útil y breve: contesta la pregunta que se hizo, menciona tu producto solo si encaja y deja que la persona venga a ti. Antes de responder, asegúrate de que tu propio perfil diga en una línea a quién ayudas y enlace a una página que explique la oferta, porque cada buena respuesta lleva a la gente primero a tu perfil.
Bajo un post como "Can anyone recommend invoicing software for a small team?" (¿alguien puede recomendar un software de facturación para un equipo pequeño?), una respuesta que funciona suena a consejo de un colega: dos cosas que buscar a ese tamaño, como recordatorios automáticos y un portal para clientes, y luego una línea diciendo que tu producto hace las dos y que con gusto lo muestras. Una respuesta que falla es un enlace pelado con un código de descuento, publicado bajo cada post coincidente en la misma hora.
El sitio web de la bio de un lead es la segunda vía. Una persona que pidió una herramienta en público y lista un sitio de empresa te dio una forma de dar seguimiento que no depende de los mensajes directos.
Encontrar leads en posts públicos es investigación ordinaria; las reglas se aplican a lo que guardas y a cómo contactas a las personas:
- Solo datos públicos. Trabaja con posts y perfiles que cualquiera puede ver. No busques correos personales ni teléfonos, y deja fuera las cuentas protegidas.
- Sin mensajes masivos. No envíes DM, seguimientos ni likes automatizados desde tu cuenta. Sorsa API es de solo lectura por diseño, así que no puede hacer nada de eso, y nunca te pide tu login de X. Lee las reglas de automatización (se abre en una pestaña nueva) de X antes de automatizar cualquier cosa en tu propia cuenta.
- El correo tiene sus propias leyes. Si envías correos a personas en la UE o el Reino Unido, necesitas una base legal bajo el GDPR, normalmente interés legítimo con una prueba de ponderación documentada. El correo comercial a personas en EE. UU. debe incluir una opción de baja que funcione, según la CAN-SPAM Act.
- Respeta las bajas. Elimina el registro de una persona cuando lo pida, y no revendas ni publiques exportaciones en bruto de perfiles de otras personas.
#Cuánto cuesta una corrida de leads
Una corrida de leads es barata en Sorsa API porque se cobra por solicitud, y cada solicitud devuelve unos 20 posts con sus autores. Una corrida diaria de 12 búsquedas, tres páginas cada una, lee unos 720 posts al día, o unos 21.6K al mes. En la API oficial de X esos posts cuestan $108 al mes a $0.005 por post, y desde el 22 de noviembre de 2026 X también cobra el autor de cada post (se abre en una pestaña nueva) como una lectura de usuario a $0.010, lo que lleva el mismo mes a $324. En Sorsa API ese mes cuesta desde $1.51 y cabe dentro del plan Starter con espacio de sobra para armar una audiencia.
API oficial de X
$500
para 100K posts
$0.005 por post
Sorsa API
desde$7
para 100K posts
desde $0.07 por 1,000
Cada paso del trabajo cuesta menos por 1,000 resultados en Sorsa API que en la API oficial de X, y la brecha es más amplia en las listas de seguidores y las consultas de perfiles, que llegan de a 200 y de a 100 por solicitud.
| Paso de la corrida de leads | Sorsa API, por 1,000 | API oficial de X, por 1,000 |
|---|---|---|
| Posts de intención con sus autores | desde $0.07 | $5.00 ($15.00 desde el 22 de nov.) |
| Los seguidores de un competidor | desde $0.007 | $10.00 |
| Perfiles consultados en lotes de 100 | desde $0.014 | $10.00 |
Posts de intención con sus autores
- Sorsa API, por 1,000
- desde $0.07
- API oficial de X, por 1,000
- $5.00 ($15.00 desde el 22 de nov.)
Los seguidores de un competidor
- Sorsa API, por 1,000
- desde $0.007
- API oficial de X, por 1,000
- $10.00
Perfiles consultados en lotes de 100
- Sorsa API, por 1,000
- desde $0.014
- API oficial de X, por 1,000
- $10.00
La API oficial de X también necesita una cuenta de desarrollador y OAuth, y su plan de pago por uso se detiene en 3 millones de lecturas de posts al mes; su página de precios (se abre en una pestaña nueva) lista cada tarifa. Sorsa API necesita una clave, y las solicitudes fallidas nunca se cobran.
#Encuentra tus primeros leads hoy
Encontrar leads en Twitter se reduce a buscar los momentos en que la gente pide ayuda, sumar las cuentas que encajan con tu comprador y responder en público antes que nadie. Para correrlo como código, Sorsa API te da las búsquedas, las bios y las listas de seguidores con una sola clave: posts de intención desde $0.07 por 1,000 y listas de seguidores desde $0.007 por 1,000, a 20 solicitudes por segundo. Tus 100 solicitudes gratis corren las 12 búsquedas del constructor unas ocho veces.
#Preguntas frecuentes
¿Cuál es la mejor API para encontrar leads en Twitter?
Sorsa API está hecha para este trabajo: una clave devuelve posts de intención de compra con perfiles completos de autor desde $0.07 por 1,000, los seguidores de un competidor desde $0.007 por 1,000 y 100 perfiles por solicitud en lote, a 20 solicitudes por segundo en todos los planes. No necesita cuenta de desarrollador de X ni OAuth, y es de solo lectura, así que nunca toca tu cuenta de X. Las primeras 100 solicitudes son gratis.
¿Sorsa API me da los correos de los prospectos?
No. Sorsa API devuelve solo datos públicos de X: posts, bios, los enlaces que la gente pone en sus bios, cantidades de seguidores y campos de perfil similares. Nunca devuelve correos ni teléfonos. Para dar seguimiento fuera de X, usa el sitio web que un lead lista en su bio, o las herramientas de contacto que ya usas, una vez que tengas una razón legítima para contactar a esa persona.
¿Puedo automatizar DM o seguimientos con Sorsa API?
No. Sorsa API es de solo lectura por diseño: no puede publicar, responder, dar like, seguir ni enviar mensajes directos, y nunca te pide tu login de X, así que tu cuenta no corre ningún riesgo por ella. Úsala para encontrar y puntuar leads, y luego responde tú en público. Si tu producto más adelante necesita publicar desde código, combina Sorsa API con la API oficial de X para ese lado.
¿Todavía existen las Lead Generation Cards de Twitter?
No. Twitter lanzó las Lead Generation Cards en 2013, dejó de crear nuevas el 1 de febrero de 2017 y dejó de mostrarlas el 1 de marzo de 2017. El 25 de agosto de 2026, X anunció Lead Gen Ads, un formulario de pago que se ofrece mediante representantes de ventas de X. Ambos recogen datos de personas que aceptan en un anuncio, mientras que buscar en posts públicos encuentra a personas que ya pidieron una solución.
¿Cómo encuentro seguidores de Twitter segmentados en mi nicho?
Busca en las bios las palabras que usa tu nicho, reúne los seguidores de dos o tres cuentas que tu nicho ya sigue y conserva los perfiles que coinciden en ambos. Las cuentas encontradas por las dos vías son las que mejor encajan. Con Sorsa API, la búsqueda en bios corre con POST /search-users, y una lista de seguidores llega de a 200 seguidores por solicitud desde $0.007 por 1,000.
¿Qué datos obtengo de cada lead?
Cada lead llega con el perfil público que muestra X: handle, nombre visible, bio, texto de ubicación, enlaces de la bio, cantidades de seguidores y seguidos, cantidad de posts, fecha de creación de la cuenta y estado de verificación. Los leads encontrados con una búsqueda también llevan el post que coincidió con sus likes, respuestas y vistas. Nunca se incluyen correos, mensajes directos ni cuentas protegidas.
#Cómo lo verificamos
El 2 de noviembre de 2026 comparamos cada endpoint, parámetro, tamaño de página y campo de esta guía con la referencia de Sorsa API en vivo y la lista de operadores de búsqueda de nuestra documentación, y leímos la página de precios de la API oficial de X y el aviso de X sobre el cobro de expansiones. Leímos las páginas que posicionan en Google para "twitter lead generation" y "how to find leads on twitter" y les hicimos las mismas preguntas a ChatGPT y a Google AI Mode. Las solicitudes y respuestas están escritas a partir de la referencia con cuentas de demostración; no las corrimos con datos reales para este artículo.
Fuentes
- X API pricing, docs.x.com (se abre en una pestaña nueva)
- X Developer Community: pay-per-use expansions update (se abre en una pestaña nueva)
- X Business: X launches Lead Gen Ads (August 25, 2026) (se abre en una pestaña nueva)
- X blog: Lead Generation Card now available to all advertisers (2013) (se abre en una pestaña nueva)
- Marketing Dive: Twitter to kill off lead generation campaigns (2016) (se abre en una pestaña nueva)
- Sorsa API reference
- Sorsa API search operators (se abre en una pestaña nueva)