Product Hunt CRM Lead Scorer
Pricing
Pay per usage
Product Hunt CRM Lead Scorer
Normalize and deduplicate imported Product Hunt launch rows into scored, CRM-ready startup records with transparent score reasons, topic fit, maker and contact evidence, outreach hooks, warnings, and evidence URLs. This Actor does not scrape Product Hunt or discover contacts.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Wit Nomad
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
2
Monthly active users
17 days ago
Last modified
Categories
Share
Turn messy Product Hunt launch rows into clean, deduplicated, scored startup leads that are ready for a CRM, spreadsheet, sales workflow, agency prospecting list, or VC/market research pipeline.
This Actor is not a Product Hunt page scraper. It is the cleanup and qualification layer after scraping or manual collection: one row per identifiable company, stable dedupe keys when rows include a Product Hunt URL, domain, slug, or product name, normalized contact/social evidence, transparent lead scoring, and flat export-friendly fields.
What it does
- Accepts Product Hunt-like launch rows in
itemsmode. - Normalizes common field variants such as
name,title,product.name,website,websiteUrl,votes,votesCount, andmakers. - Deduplicates by canonical Product Hunt post slug first, then by normalized domain and product slug.
- Produces flat CRM-ready output fields.
- Adds deterministic
leadScore,scoreReasons,icpFit,warnings, and anoutreachHook. - Keeps scoring transparent so you can audit why a lead was ranked high or low.
Who it is for
Use this Actor if you already have Product Hunt data from:
- another Apify Product Hunt scraper,
- a CSV/JSON export,
- manual research,
- an internal research workflow,
- or a no-code automation that collects launch rows.
Typical use cases:
- sales teams ranking newly launched SaaS/startup leads,
- agencies finding recently launched companies to contact,
- VCs and scouts triaging Product Hunt launches,
- growth teams preparing spreadsheet or CRM imports,
- builders cleaning output from raw scrapers before enrichment.
Input
Current supported input mode: items.
{"mode": "items","maxItems": 500,"items": [{"name": "LaunchDeck","productHuntUrl": "https://www.producthunt.com/posts/launchdeck","websiteUrl": "https://launchdeck.io","tagline": "AI follow-up engine for lean sales teams","topics": ["Sales", "Artificial Intelligence", "CRM"],"upvotes": 420,"commentsCount": 37,"makerNames": ["Ada Lee", "Sam Ho"],"publicEmail": "hello@launchdeck.io","emailSourceUrl": "https://launchdeck.io/contact"}]}
items must be an array of Product Hunt-like objects. The Actor is intentionally tolerant of common field names, so exact source shape can vary.
Output
Each output item is one normalized lead:
{"dedupeKey": "ph:launchdeck","productName": "LaunchDeck","productHuntUrl": "https://www.producthunt.com/posts/launchdeck","productSlug": "launchdeck","tagline": "AI follow-up engine for lean sales teams","topics": ["Sales", "Artificial Intelligence", "CRM"],"upvotes": 420,"commentsCount": 37,"websiteUrl": "https://launchdeck.io/","domain": "launchdeck.io","makerNames": ["Ada Lee", "Sam Ho"],"publicEmail": "hello@launchdeck.io","emailConfidence": "high","leadScore": 90,"scoreReasons": ["domain:+20", "direct_email:+20", "maker:+10", "traction:+20", "icp_match:+20"],"icpFit": "high","outreachHook": "LaunchDeck: AI follow-up engine for lean sales teams stood out with 420 Product Hunt upvotes.","warnings": [],"evidenceUrls": ["https://www.producthunt.com/posts/launchdeck","https://launchdeck.io/","https://launchdeck.io/contact"]}
Output fields
dedupeKeyproductNameproductHuntUrlproductSluglaunchDatetaglinedescriptiontopicsupvotescommentsCountwebsiteUrldomainmakerNamesmakerPhUrlsxUrllinkedinCompanyUrlgithubUrldiscordUrlcontactPageUrlpublicEmailemailSourceUrlemailConfidenceleadScorescoreReasonsicpFitoutreachHookwarningsevidenceUrlsscrapedAt
Scoring
Scoring is deterministic and explainable:
domain:+20direct_email:+20orcontact_page:+12social:+10maker:+10- traction from upvotes/comments up to
+20 - ICP keyword/category match up to
+20 - penalties for missing domain/contact/maker signals
The score is clamped to 0..100. Use scoreReasons and warnings to audit the result before importing leads into outreach tools.
Local development
From this Actor folder:
npm testnode src/main.js \--input ../../samples/product-hunt/product-hunt-crm-lead-scorer-input.json \--output ../../samples/product-hunt/product-hunt-crm-lead-scorer-output.json \--scraped-at 2026-07-05T00:00:00.000Z
Limitations
- This Actor does not scrape Product Hunt pages directly. Bring Product Hunt-like rows from another scraper/export/workflow.
- URL mode is not exposed yet; unsupported modes are rejected instead of silently returning empty output.
- Public or enriched emails are not guaranteed verified. Always review email evidence before outreach.
- The scoring model is deterministic and lightweight, not a machine-learning model.
- No external website enrichment is performed in this version.
Cost and permissions
- The Actor reads the provided Actor input and writes normalized rows to the default dataset; it does not request account-wide data access.
- It performs no browser crawling and no external HTTP scraping in the current version.
- Runtime is expected to be lightweight because it processes provided rows only.
Best results
For best results, include as many of these fields as possible in each input row:
- Product Hunt URL or slug
- product name
- website URL
- tagline or description
- topics/categories
- upvotes and comments count
- maker names or maker profile URLs
- public email or contact page URL
- social/profile URLs