Skip to content
Our partner software
DialerDay

Adding leads

Why didn't re-adding a lead put it back in the queue?

· 2 min read

Short answer

A lead can only be in a campaign once. Adding it again by hand, by CSV or by tag leaves its existing entry alone, even if it's finished. That's on purpose, so a re-uploaded list doesn't restart everyone's attempts. To call it again, post it to the lead webhook or API (a fresh opt-in), let a missed call from them re-open it, move it with a workflow, or turn on list recycling.

This surprises a lot of teams. You finish a list, upload the same CSV again, and nothing gets dialed. Here's why, and what to do instead.

One entry per lead per campaign

Each lead has exactly one entry in a campaign, and that entry carries its history: attempts, last outcome, cadence step and next due time. If adding the lead again created a second entry, or reset the first, a re-uploaded list would:

  • restart attempt counts, so leads blow past your max attempts,
  • bring back leads that were already marked not interested or wrong number,
  • wipe out the retry spacing you set.

So the "quiet" ways of adding leads leave existing entries alone:

  • CSV import
  • picking contacts by hand
  • DialerDay tag sources

What does put a lead back in the queue

MethodWhat happens
Lead webhook or public APITreated as a fresh opt-in. The entry goes back to pending with a fresh start: step 1, due now, new lead time. It's also marked as a hot inject.
A missed call from the leadWhen a GoHighLevel or CRM lead calls you and nobody answers, the campaign can re-open their entry and move it to the front, even if it was finished.
GoHighLevel or CRM re-matchEntries the source skipped itself (exclude tag, DND, left the list) are put back when the lead matches again.
List recyclingLeads that ran out of attempts get a fresh budget after the number of days you set (Settings → Queue priority).
Workflow "move to campaign"Moves the lead into another campaign, optionally with its attempts reset.

A lead that's on a call right now is never reset in the middle of the call.

Why the webhook is different

A lead posted to the webhook or API means *this person just raised their hand again*, for example by filling in your form a second time. That's a new reason to call, so DialerDay treats it like a brand-new lead, even if it finished the campaign last month. A CSV upload doesn't carry that meaning.

Common situations

  • "I want to call my whole old list again." Turn on list recycling, or create a new campaign and import the list there. A new campaign starts clean.
  • "A lead re-submitted my form." Post it to the webhook. It's reset and jumps the queue.
  • "One lead needs another go." Post it to the lead webhook or API. That resets it like a fresh opt-in.

Ready for more conversations per hour?

Connect your Twilio account, import a list and start a parallel session in minutes. No desk phones, no downloads.