Daily Product Hunt leads into HubSpot CRM

By General Input

Every weekday at 9am ET, turn yesterday's Product Hunt launches into ready-to-work HubSpot contacts, companies, and notes for your sales team.

Integrations

  • Product Hunt
  • HubSpot

Type

Agentic Task

Categories

  • Sales

Build me an agent workflow that runs every weekday at 9am Eastern Time and turns fresh Product Hunt launches into warm leads in my HubSpot CRM. The trigger should be a cron schedule (Product Hunt does not have a poll trigger). The workflow uses two integrations: Product Hunt and HubSpot.

Configurable inputs the agent should ask me for once and remember: (1) a list of Product Hunt topic slugs to watch, defaulting to artificial-intelligence, developer-tools, and saas; (2) a short plain-language description of my ideal customer profile (ICP); (3) the maximum number of leads to create per run, defaulting to 10; (4) the lifecycle stage to use on new contacts, defaulting to "lead"; and (5) the lead source label, defaulting to "Product Hunt launch".

Each run, the agent should do the following:

1) Call Product Hunt's List Posts for the prior 24 hours, filtered to my configured topics, ordered by votes. Pull enough posts to have a healthy pool to filter from (around 50 is fine).

2) Rank and shortlist the launches that plausibly fit my ICP based on the post tagline, description, and topics. Keep roughly the top 10 most relevant. If fewer than 10 are a genuine fit, ship fewer. Do not pad the list.

3) For each shortlisted launch, call Product Hunt's Get Post to pull the full detail (website URL, tagline, description, upvote count, launch date, topics, and the list of makers). Then for each maker, call Get User to pull their name, headline, and any public social handles. Note that Product Hunt redacted some user fields (Twitter handles, sometimes names) in 2023, so handle null values gracefully.

4) Parse the product's root domain from the website URL (strip protocol, www, and path). This domain is the dedupe key for the company.

5) Before creating anything, dedupe against HubSpot: use Search Companies filtered by the domain property to see if a company with that domain already exists, and use Search Contacts to see if a contact with the maker's email already exists. If both exist and are already associated, skip the launch entirely. If the company exists but no note from today has been added, you may still attach the new note. If a contact exists, reuse it instead of creating a duplicate.

6) For each new maker, use HubSpot's Create Contact with the maker's name (split into first/last), email if available, lifecycle stage set to my configured value, and a custom source property set to my configured label.

7) For each new product, use HubSpot's Create Company with the product name, the parsed domain, and a short industry-style description derived from the tagline and topics.

8) Associate the maker contact to the company in HubSpot. If a launch has multiple makers, associate all of them to the same company.

9) Use HubSpot's Create Note attached to the company. The note body should summarize: what the product does (one or two sentences), why it fits my ICP (one sentence referencing my ICP description), the launch date and current upvote count, a link back to the Product Hunt post, and a 2-3 sentence personalized cold-opener that references something specific about the launch (the tagline, a feature, the maker's background, etc.). Keep the tone human and curious, not salesy.

At the end of the run, log a short summary line per launch processed (created vs skipped, with the reason) so I can audit what happened. Respect Product Hunt's GraphQL complexity limits and HubSpot's search rate limit (4 requests per second); if a 429 comes back, back off and retry.

Failure modes to handle explicitly: a launch with no makers (skip), a launch with no website URL (skip), a maker with no email (still create the contact with name only, but flag that email is missing in the note), and HubSpot validation errors (log and continue with the next launch rather than failing the whole run).

Related prompts

Explore more prompts
Turn Mailjet email clicks into ranked HubSpot follow-upsiMessage campaign console with pre-flight checks and delivery boardA searchable RFP answer library your bid team drafts fromSee which target accounts just started advertising on LinkedInAccount health board that puts product usage next to your CRMLook up a customer's full chat history mid conversationLusha prospecting workbench with credit-safe revealsWhich companies your LinkedIn ads reach, matched to your CRMLead response desk with a running clock on every new leadApprove Lusha enrichment field by field before HubSpot saves it