Score and route new Jotform leads to HubSpot, Slack, and Gmail
Every new Jotform submission gets a 0 to 100 score, lands in HubSpot with a hot, warm, or cold tier, and triggers the right follow-up automatically.
Build me an agent workflow that qualifies and routes new leads from my Jotform lead capture form. The trigger is a Jotform webhook fired on every new submission: register the webhook against my form using Jotform's Create Webhook operation so the agent runs the moment a submission lands.
When the workflow fires, the agent should:
1. Fetch the full submission detail using Jotform's Get Single Submission operation, using the submission ID from the webhook payload. Parse out name, email, company, company size, budget, and timeline. Be tolerant of missing fields and label them as unknown.
2. Reason about lead quality and assign a 0 to 100 score plus a tier of hot, warm, or cold. Weight these signals: email domain (business domain is a stronger signal than a free provider like gmail.com, yahoo.com, outlook.com, hotmail.com), stated company size (larger is generally stronger), stated budget (higher is stronger), and urgency language in the timeline (phrases like "this quarter", "ASAP", "immediately" are strong; "just exploring", "someday", "researching" are weak). Use these default thresholds, and expose them as configurable inputs so I can tune them later without rewriting the prompt: hot = score >= 75, warm = score 50 to 74, cold = score < 50.
3. Upsert the lead into HubSpot using Batch Upsert Contacts, matched on email. Write the parsed contact properties (firstname, lastname, email, company), and also write the score and tier into custom contact properties named lead_score and lead_tier. Set lifecyclestage based on tier: hot leads go to salesqualifiedlead, warm leads go to marketingqualifiedlead, cold leads go to lead. If the custom properties do not exist yet, note that in the workflow description so I know to create them in HubSpot first.
4. If the tier is hot, post a Slack message to my sales channel using Slack's Send a Message operation. The channel name should be a configurable input (default to #sales-leads). Include the lead's name, company, email, score, and a one-line "why this is hot" rationale the agent writes based on the strongest signals it found. Format it cleanly so the channel stays scannable.
5. If the tier is warm, draft and send a short personalized intro email from my Gmail using Gmail's Send a Message operation. The email should address the prospect by first name, reference something specific from what they wrote in their submission (their use case, their company, or their timeline), and end with a soft call to book a call. Keep it under 120 words and sound like a real person, not a template. The sender, subject line template, and signature should be configurable inputs.
6. If the tier is cold, do nothing beyond the HubSpot upsert. No Slack ping, no email. The whole point is to keep sales' signal-to-noise high.
Expose these as configurable inputs on the workflow: the Jotform form ID, the hot/warm/cold score thresholds, the Slack channel for hot lead alerts, the Gmail sender address and signature, and the HubSpot custom property names for score and tier. Log a one-line summary of every run (lead name, score, tier, what was sent) so I can audit the workflow's decisions later.
Additional information
What does this prompt do?
- Watches your Jotform lead form for new submissions and pulls the full submission details the moment one arrives.
- Reads name, email, company, budget, and timeline, then scores the lead from 0 to 100 and labels it hot, warm, or cold.
- Upserts every lead into HubSpot with the score, tier, and lifecycle stage written to the contact record.
- Pings your sales channel in Slack the second a hot lead lands, with contact details and a one-line reason it scored high.
- Sends warm leads a personalized intro email from your Gmail that references what they actually wrote on the form. Cold leads are logged quietly to keep the noise down.
What do I need to use this?
- A Jotform account with the lead form you want to qualify.
- A HubSpot account where new contacts should land, with custom properties for the score and tier.
- A Slack workspace with a channel for sales alerts.
- A Gmail account that will send the warm-lead intro emails.
How can I customize it?
- Tune the score thresholds. The defaults are 75 and up for hot, 50 to 74 for warm, and under 50 for cold, but you can move the cutoffs to match your pipeline.
- Change what counts as a quality signal. Add your own rules around email domain, company size, budget, or timing language.
- Swap the Slack channel, the lifecycle stages written to HubSpot, or the tone and template of the Gmail intro for warm leads.
Frequently asked questions
Do I need a paid Jotform plan for this to work?
Will this work with HubSpot Free?
How does the agent decide what counts as a hot lead?
Can I change which Slack channel gets the hot lead alerts?
What happens to cold leads?
Stop manually triaging every form fill.
Connect Jotform, HubSpot, Slack, and Gmail once, and Geni qualifies and routes every new lead the second it lands.