Turn buyer-intent posts on X into qualified HubSpot leads
Every morning at 7am, find people on X asking for tools like yours, add the best to HubSpot, and ping sales in Slack.
Build me a buyer-intent prospecting agent that runs every weekday morning at 7am on a cron trigger. The goal is to turn X (Twitter) chatter into qualified HubSpot leads with minimal manual review.
Step 1. Use TwitterAPI.io Advanced Search to run a configurable list of intent queries. Examples I want supported out of the box: "anyone recommend a [category] tool", "switching from [competitor]", "looking for alternative to [competitor]", "any good [category] alternatives", "moving off [competitor]". Append min_faves:2 lang:en to every query and restrict to the last 24 hours so we only act on fresh, vaguely vetted posts. De-duplicate tweets across queries before moving on.
Step 2. For each tweet returned, call TwitterAPI.io Get User Info on the author to pull follower count, bio, and location. Score the prospect on a 1 to 5 fit scale based on ICP signals in the bio (job title, seniority, company hints, geography). Drop anything 1 to 3. Anything 4 or 5 is a hot prospect and continues.
Step 3. For each hot prospect, before creating anything in HubSpot, call HubSpot Search Contacts to check if we already have them. Search by the X handle on a custom property and by any name tokens from their profile. Only treat it as a match if there is high confidence: same name AND a corroborating signal like matching company or location. If the match is shaky, default to creating a new contact rather than risking a wrong association. I would rather de-dupe later than overwrite the wrong record or log a tweet against the wrong human.
Step 4. If no confident match exists, call HubSpot Create Contact. Store the X handle on a custom contact property called x_handle (assume it already exists in the account; if it does not, mention that in the run summary). Populate first and last name from the X display name, set lead source to "X buyer intent", and copy the bio onto a notes-style property if one is available.
Step 5. Call HubSpot Create Note attached to the contact (whether matched or newly created). The note body should include: the full tweet text and a direct link to the tweet, author follower count and bio, the 1 to 5 fit score with the specific ICP signals that drove it, and a one-line suggested opener that the agent writes fresh for this prospect.
Step 6. Finish by posting a single Slack Send a Message to my sales channel with the top 3 prospects from this run, ranked by fit score then follower count. Format it as a short readable summary with each prospect's handle, the intent quote, the fit score, and a link to the HubSpot contact record. If zero hot prospects were found, post a one-line "no hot prospects today" message so the team knows the agent ran.
Configurable knobs I want exposed at the top of the agent instructions: the list of search queries, the min_faves threshold, the recency window in hours, the Slack channel ID for the sales digest, the fit score floor (default 4), and the name of the X handle custom property on HubSpot contacts.
Additional information
What does this prompt do?
- Searches X every morning for the exact buying signals you care about, like people asking for tool recommendations or moving off a competitor.
- Reads each poster's bio, location, and follower count, then scores them on a simple 1 to 5 fit scale so only real prospects move forward.
- Checks HubSpot first to avoid duplicates, then creates a new contact with a note that captures the tweet, the fit score, and a tailored opener line.
- Posts the top three prospects to your sales Slack channel so a rep can reach out before the conversation goes cold.
What do I need to use this?
- A TwitterAPI.io account with an API key, used to search public posts on X and read public profiles.
- A HubSpot account where you can create contacts and notes, plus a custom contact property to store the X handle.
- A Slack workspace and the channel where your sales team wants the morning digest.
- A short list of buying-intent phrases tied to your product category and your main competitors.
How can I customize it?
- Change the time of day or the days it runs, for example only weekdays or twice a day during a campaign push.
- Add or remove search phrases, raise or lower the engagement filter, or shorten the time window the agent looks back over.
- Move the fit score cutoff up or down depending on how strict you want the agent to be before adding a contact.
- Switch which Slack channel gets the morning digest, or send it as a direct message to a single rep instead.
Frequently asked questions
Will this create duplicate contacts in HubSpot?
How does the agent decide who counts as a good prospect?
Can I run this for more than one product category?
What happens on days with no good matches?
Do I need a paid HubSpot plan?
Stop missing buying signals on X.
Connect TwitterAPI.io, HubSpot, and Slack once, and Geni surfaces qualified prospects in your CRM every morning at 7am.