Number of consecutive disqualified leads for a company

Hi everyone :waving_hand:

I’m working on a mechanism in HubSpot that would allow me to monitor the number of consecutive disqualified leads for a company, and I’m wondering if anyone has implemented something similar or has an idea for the best way to approach it.

Current setup

At the moment:

  • I have a rollup property at the company level that shows the total number of disqualified leads.

  • Based on this property, I created a segment showing companies where the number of disqualified leads is less than 5.

The problem

This approach becomes inefficient at scale because it doesn’t take the order of the leads into account.

For example, I want to distinguish between:

  • :cross_mark: Disqualified → Disqualified → Disqualified → Disqualified → Disqualified

  • :white_check_mark: Disqualified → Disqualified → Disqualified → Disqualified → Qualified → Disqualified

In the second scenario, the company should still appear in the segment because there have never been 5 consecutive disqualified leads. The qualified lead should effectively reset the counter.

Goal

I would like to build a mechanism that:

  • counts only consecutive disqualified leads

  • resets the counter whenever a lead is qualified

  • allows me to exclude companies once they reach 5 consecutive disqualified leads

My questions

  1. Is this something that can be achieved natively in HubSpot?

  2. What properties and/or workflows would I need to create to achieve this logic?

  3. Would a custom property such as “Current Disqualification Streak”, combined with a workflow that increments or resets the value based on the lead status, be a viable approach?

  4. If this cannot be done natively, what would be the recommended approach — Custom Code, an external integration, or something else?

I’d really appreciate any suggestions or examples of how you would approach this.

Thanks!

Hi there @SzymonSzymski,

Thank you for posting to the Community! I’d like to tag in some of our Top Contributors to see if they have any suggestions. Hi @eburnaman @franksteiner79 and @Humashankar have any of you done this before? If so, how would you recommend approaching this?

Cassie, Community Manager

Hi @SzymonSzymski,

You can actually build this natively with two workflows and a few company properties.

I would create these properties on the Company:

  • Current Disqualification Streak – Number

  • Last Lead Outcome – Dropdown (Qualified / Disqualified)

  • Last Processed Lead ID – Single-line text

Then set up two workflows:

1. Lead-based workflow

Trigger it when the Lead moves to either Qualified or Disqualified.

Use Edit record to update the associated Company:

  • Set Last Lead Outcome to Qualified or Disqualified depending on the Lead outcome.

  • Copy the Lead’s Record ID into Last Processed Lead ID.

The Lead ID is useful here because it gives the Company a new value each time a different Lead is processed, even if several Leads in a row are all Disqualified.

2. Company-based workflow

Enroll when Last Processed Lead ID is known and enable re-enrollment when this property is updated.

Then branch based on Last Lead Outcome:

  • If Disqualified → increase Current Disqualification Streak by 1.

  • If Qualified → reset Current Disqualification Streak to 0.

You can then build your segment using Current Disqualification Streak < 5 (or exclude companies where it reaches 5).

This keeps the whole setup native and, unlike the rollup, tracks the sequence of Lead outcomes rather than the total number of disqualified Leads.