Work your Lemlist replies as people, not campaign rows
Open one queue every morning with every interested reply across all your campaigns, deduped to one row per human, with research and CRM handoff built in.
Build me an internal app my SDRs open every morning to work our Lemlist replies as people rather than as campaign rows. Lemlist reporting is sequence-centric, so the same human shows up separately in every campaign they are enrolled in. This app is the contact-centric surface that gap implies: one row per human, not per sequence enrollment.
The main view is a single queue of every lead currently in the interested or warmed state across all running campaigns. Build it from Lemlist List Campaigns to get the running campaigns, then List Campaign Leads on each one filtered by lead state to interested and warmed. Use Get Lead by Email to collapse someone who sits in three campaigns into one row, so the rep sees the full touch history in one place instead of three near-identical entries. Sort the queue by how long the reply has gone unworked, longest wait at the top.
Each row shows the person, their company, which campaigns they are enrolled in, their state in each one, and how long the reply has been sitting. Clicking a row opens a detail panel with the merged touch history across every campaign: which sequence steps ran, on which channel, and when they replied.
Put a "Prep this lead" button on the detail panel that kicks off a background agent. The agent gathers that person's records across campaigns with Get Lead by Email, checks whether they already exist in our CRM with HubSpot Search Contacts, researches the company on the web, then writes a call prep brief and a suggested reply. Both land back in the app on that lead's detail panel so the rep can read them there, and when a matching CRM contact exists the agent also files the brief on it with HubSpot Create Note. Show the run state on the panel so the rep can tell prep is in progress and come back to it.
Two more actions live on the panel. Pause Lead calls the Lemlist Pause Lead operation to stop the remaining sequence steps the moment a rep takes the conversation over, so nobody receives an automated follow up after a real conversation has started. Send to CRM creates the record with HubSpot Create Contact and opens a deal with Create Deal, into a pipeline stage the rep picks from a dropdown populated by HubSpot List Pipelines.
Each rep should see their own queue. Store worked state in the app: a lead is marked worked once it has been paused or pushed to the CRM, so nobody double taps the same reply. Worked leads drop out of the default queue view but stay reachable behind a filter so a rep can go back and see what was done.
One important constraint to bake in: Lemlist rate limits at 20 requests per 2 seconds per API key. The queue handler should page campaign leads deliberately, one campaign at a time with paced requests, rather than fanning out across every campaign at once. Cache the assembled queue so opening the app does not refetch everything, and give the view a manual refresh control.
What does this prompt do?
- One queue of every lead who replied with interest or warmed up across all your running campaigns, with the longest unworked reply at the top.
- Someone sitting in three campaigns shows up once, with their full touch history in one place instead of three near-identical rows.
- A Prep this lead button hands the lead to a background assistant that researches the person and their company, checks whether they are already in your CRM, and writes back a call prep brief and a suggested reply.
- Stop the rest of the sequence the moment a rep takes the conversation over, or push the lead into your CRM as a contact plus a new deal in the stage the rep picks.
What do I need to use this?
- A Lemlist account with at least one running campaign
- A HubSpot account where your team tracks contacts and deals
- Reps who work replies as part of their morning routine, each with their own login
How can I customize it?
- Choose which reply states land in the queue, interested only or interested plus warmed.
- Change the sort so the queue leads with your highest value campaigns instead of the longest wait.
- Pick which deal pipeline and stage new leads land in when a rep sends them to the CRM.
- Adjust what the prep brief covers, for example adding recent funding news or headcount growth.
FAQs
Does this send emails or replies for me?
What happens if the same person is in several campaigns?
Will two reps end up working the same reply?
Does pausing a lead delete them from the campaign?
Do I need a paid HubSpot plan?
Related templates
Twice a day we spot the people clicking your pricing and demo pages, create a follow-up task for their owner, and post a ranked recap to Slack.
Build every text campaign in one screen: check who is actually reachable, see a realistic send plan, then watch delivery land row by row.
Every proposal you have ever submitted in one searchable archive, with the closest past answers lined up against each question in a new RFP.
Open one board each Monday to see which of your target accounts are running LinkedIn ads right now, and which only switched them on this week.
Your customer success team opens one board where every account's logins, seats and usage trend sit beside its owner, plan and renewal date.
Your agent types an email and sees every past conversation, rating and tag next to the CRM record, then files notes without ever leaving the chat.
Stop working replies as campaign rows.
Give your reps one queue where every interested reply is a person with full context, not a line item scattered across three separate sequences.