Skip to main content
tool-tweaks intermediate 9 min read

Generate 100 Product Hunt headlines with Notion + Make.com in under an hour

Summary. Top-30 Product Hunt launches A/B test 50+ taglines before launch day. The product with the best hook wins regardless of feature depth — and "X for Y" beats "All-in-one platform" every single time. Doing this by hand takes a weekend. A Notion database + Make.com scenario + OpenAI pumps out 100 scored headline variants in under an hour, giving you a shortlist to validate with real humans before you lock your launch copy. Here is the full setup including the exact prompts, the scoring rubric, and the pre-launch validation workflow.

Tools needed: Notion (free or Plus), Make.com (free tier covers this), an OpenAI API key ($1–2 total cost), 60 minutes.

The problem

Your launch headline is the single highest-leverage variable on launch day. The upvote algorithm responds to first-click CTR: if your tagline makes a reader pause and click, it surfaces higher. Most makers ship one headline they wrote in 20 minutes and never tested. The top launches are different — they run 40–60 tagline variants through friend networks and Twitter polls in the week before launch, kill the bottom 80%, and ship the survivor.

The bottleneck is generation speed. Writing 60 credible variants manually takes 6–8 hours. This workflow compresses that to 40 minutes while covering format diversity (not just "X for Y" variants of the same core idea, but genuinely different angles: stat-led, question hooks, verb-noun, problem-first).

Step-by-step

  1. Create two Notion databases. First: Seeds with columns Seed Headline, Product Description, Target Audience, Key Differentiator. Second: Generated Headlines with columns Headline, Format, AI Score (1-10), Human Score, Notes, Status (New / Shortlisted / Rejected).
  2. Write 5 seed rows in the Seeds database. Each seed is a different framing of your product, not five similar descriptions. Force yourself to cover: (a) the job-to-be-done, (b) the category it replaces, (c) the specific user, (d) the metric it improves, (e) the workflow it eliminates. Different seeds generate different headline families.
  3. Set up the Make.com scenario. Create a new scenario. Trigger: Notion → Watch Database Items, pointed at your Seeds database. Set polling to every 15 minutes (or trigger manually for testing).
  4. Add the OpenAI module for generation. Module: OpenAI → Create a Completion. Model: gpt-4o (for quality) or gpt-4o-mini (for cost — works fine here). System prompt:
    You are a Product Hunt launch coach who has studied every top-50 launch in the last 3 years.
    Your job: generate 20 headline variants for a product launch.
    Cover these 4 formats, 5 variants each:
    1. "X for Y" (tool/outcome for persona)
    2. Verb-noun benefit (starts with a strong verb)
    3. Question hook (opens a curiosity gap)
    4. Stat-led (opens with a number or percentage)
    Rules:
    - Every headline under 60 characters
    - No filler words: "revolutionary", "powerful", "seamless", "all-in-one"
    - Be specific. "Save 3 hours" beats "Save time"
    - First word should create forward momentum
    Output: JSON array of {format: string, headline: string}
    User message: pass the seed row's fields: Product: {{seed_headline}}. Target audience: {{target_audience}}. Key differentiator: {{key_differentiator}}.
  5. Parse the JSON response and create Notion rows. Add a JSON → Parse JSON module. Then add Notion → Create a Page module inside a Make iterator, creating one row in the Generated Headlines database per headline object. Map: Headline → headline field, Format → format field, Status → "New".
  6. Add the scoring pass. After generating headlines, add a second OpenAI module for scoring. This runs on each generated headline with this prompt:
    You are a Product Hunt expert. Score this headline 1-10 on hook strength.
    Criteria: specificity (does it name something concrete?), curiosity gap (does it make you want to click?), relevance (does it speak to a real pain?), brevity (under 50 chars scores higher).
    Headline: "{{headline}}"
    Output JSON: {score: number, reason: string (max 15 words)}
    Map the returned score to the AI Score field in the Notion row you just created.
  7. Run the scenario for all 5 seeds. With 5 seeds × 20 headlines = 100 generated headlines, each with an AI score. In Make's free tier (1,000 operations/month), this uses roughly 600 operations (100 creates + 100 scores + overhead). Within the free limit for one launch.
  8. Sort and shortlist in Notion. In your Generated Headlines database, sort by AI Score descending. Review the top 20. Change Status to "Shortlisted" for the 8–10 that pass a human gut-check. These are your candidates for external validation.
  9. Validate with real humans before locking. Post a Twitter/X poll with your top 4 candidates the week before launch. Ask: "Which of these makes you want to click to learn more?" For higher signal, DM 5–10 people in your target audience directly and ask which headline describes a tool they would want. The one that gets the most unprompted "what does this do?" questions is usually your winner — it creates the curiosity gap.

Format guide — examples of what works

  • X for Y: "Notion for your support inbox" / "Linear for solo founders" / "Stripe Atlas for non-US companies"
  • Verb-noun benefit: "Replace 4 tools with one timeline" / "Cut your standup to 3 minutes" / "Ship without breaking staging"
  • Question hook: "What if your CRM updated itself?" / "Why does invoicing still take 20 minutes?" / "What are your competitors building right now?"
  • Stat-led: "Reduce onboarding from 6 steps to 1" / "73% of support tickets answer themselves" / "Save $8,400/year on observability"

Notice the pattern: every good headline names something concrete. "Notion for your support inbox" is better than "AI-powered knowledge management" because it puts the category and the use case in 6 words. The AI will generate both types — your job in the shortlisting step is to kill anything abstract.

Expected outcome

100 headlines in a scored Notion table in under 40 minutes. Shortlist of 8–10 for human validation. A launch headline tested against real audience reactions rather than your own assumptions. The workflow costs $0.50–1.50 in OpenAI API calls for a full 100-headline generation and scoring pass — negligible against the value of a launch that lands in the top 30 vs. one that fades on page 2.

Gotchas

  • The AI scorer has biases. It tends to over-score stat-led headlines and under-score question hooks because stats look concrete in text form. Always override with human judgment on the top-10 shortlist — the AI score is a first filter, not a final decision.
  • Make.com free tier resets monthly. 1,000 operations/month covers one full launch run. If you want to run multiple products or test multiple variations, upgrade to the $9/month Core plan. Still cheaper than Zapier equivalent ($20/month minimum for the same operation count).
  • Avoid emoji in Product Hunt headlines. They look good in social posts but Product Hunt's algorithm and indexer treat emoji as special characters. Clean text outperforms decorated text in most category searches.
  • The seed quality determines the output quality. If all 5 seeds are variations of the same description, you will get 100 headlines that all sound the same. Force real framing diversity in step 2 — it is the most important step in the whole workflow.
  • Timing matters as much as the headline. Top-100 launches post at 12:01 AM Pacific (when the daily cycle resets). An average headline launched at the right time beats a perfect headline launched at 3 PM. Lock your headline 48 hours before launch; do not change it on the day.

Time to set up: 60 min first time, 15 min for subsequent launches. Estimated savings: 6–8 hours per launch cycle replaced by 40 minutes + better headline quality from testing vs. guessing. See our Notion deal and Make.com deal for current pricing on both tools.