Company or contact is not pulling into exclusions

Last updated: May 5, 2026

Why is this company or contact not pulling into my exclusions?

There are a few reasons this could happen:

How Company-Level Exclusions Work

Company-level exclusions automatically exclude all contacts within those companies. When you create an exclusion list at the company level, any contacts, leads, or prospects associated with those companies will not be added to sequences – you don’t need to create separate contact‑level exclusions. Note that company‑level exclusions match against the company domain field only and require exact domain matching – domain variations (e.g., “gradient‑labs” vs “gradientlabs”) are treated as different domains and must be added separately to your exclusion list.

Company names cannot be edited directly in Unify. Unify uses your CRM as the source of truth for all company data, including names. If you see an incorrect or outdated company name in Unify, you must update it in your CRM (e.g., HubSpot, Salesforce), and the change will sync to Unify automatically. This is particularly important when troubleshooting exclusion matching issues, as the company name displayed in Unify reflects what's currently in your CRM.

Exclusion lists are global by default. Once created, an exclusion list applies to all audiences and sequences automatically. However, you can turn off specific exclusion lists for individual audiences if needed.

Exclusions work bidirectionally. When a contact or company no longer meets exclusion criteria (for example, an opportunity closes and they no longer have open opportunities), they can be automatically re‑enrolled in sequences if they meet audience criteria and the audience is actively enrolling. The system will both exclude and re‑include contacts as their status changes.

  • Wrong domain listed on the company in your CRM or by Unify: You can troubleshoot this by looking up at the company in your CRM or Unify to check the associated domain. This may happen in cases where the domain has been updated recently or company acquisitions. Company-level exclusions only match the exact domain on the company record – if a company has domain variations (e.g., “gradient‑labs” vs “gradientlabs”), you must add all variations to your exclusion list. Additionally, company-level exclusions match against the company domain field, not individual email domains. To catch all variations, consider creating both company-level exclusions (with all domain variations) and person-level exclusions based on email domains.

  • Company acquisitions causing name and domain mismatches: When one company acquires another, the acquired company's domain may remain in your CRM while the company name changes to the parent company (e.g., corecon.com acquired by Sage). This creates mismatches where the domain in your CRM doesn't align with the current company name, potentially causing exclusion matching issues. Unify matches and groups companies based on where a domain routes to at the DNS level, not just the domain name itself. If goodkind.com redirects to niche.com (or vice versa), Unify treats them as the same company and groups contacts under whichever domain it resolved to first, which may not match the company name you expect to see. To resolve this, merge duplicate company records in your CRM (keeping the record with the correct current name and primary domain), and ensure the surviving record has the appropriate domain set. If both the old and new company domains need to be excluded, add both domain variations to your exclusion list.

  • Duplicate company records in your CRM: If you have multiple company records for the same domain with different field values, a contact may be enrolled based on the record that doesn’t match your exclusion criteria. For example, if one company record has “Lifecycle Stage: Opportunity” (matching your exclusion) but a duplicate record has “Lifecycle Stage: Lead” (not matching), the contact will be enrolled. To troubleshoot this, search your CRM for duplicate company records associated with the same domain and merge or delete the duplicates to ensure consistent field values across all records.

  • CRM automations interfering with field mappings: Even when a field is set to "read only" in Unify (meaning Unify won't directly update it), your CRM's internal automations may still update that field when Unify writes back email activity. For example, if you have a HubSpot automation that updates "last activity date" whenever email activity is logged, this can trigger exclusions unexpectedly - even though Unify isn't directly writing to that field. To avoid this, either disable the conflicting CRM automation or change the field mapping to "read & write" access in Unify.

  • Exclusion type change resets filters causing mass exclusions: When you toggle an existing exclusion from company-level to person-level (or vice versa), the system automatically resets all filter criteria. This can cause unintended mass exclusions if not carefully reconfigured. For example, if you change from company to person exclusion type and the criteria becomes "any person whose email is not [specific email]", this will match everyone except that one person, potentially excluding and unenrolling large numbers of contacts from active sequences. If you need to change an exclusion's type, always verify and reconfigure the filter criteria immediately after making the change, and review the affected contact count before saving to ensure it matches your expectations.

  • HubSpot lifecycle stage field limitations: Unify currently only supports reading deal lifecycle stages from HubSpot, not contact or company lifecycle stages. Deal-based exclusions work at the company level by default – when you create an exclusion based on HubSpot deal stage, it will exclude all contacts at companies with deals matching that criteria, not just the contacts directly associated with those deals. If you’re trying to filter audiences or create exclusions based on contact‑level lifecycle stages (such as “Nurture,” “Lead,” or “Opportunity” at the contact level), these filters will not work as expected. As a workaround, either use deal lifecycle stages for your filtering criteria, or create a custom checkbox or text field at the contact level in HubSpot that you can map to Unify. Avoid using campaign fields or multi‑select picklists for this workaround, as these field types are not fully supported.

  • Domain is missing in your CRM: We ingest company records into Unify based off a domain match. If there is no domain filled on the company record in your CRM, we may not pull that record into Unify.

  • Competitor domains won't appear in exclusions list if not in CRM: When adding competitor domains to your exclusions, they won't show up in the exclusions list unless that competitor already exists as a company record in your CRM. However, the exclusion will still work – if the competitor domain is later added to your CRM or gets de‑anonymized via web intent, it will be properly excluded from sequences. When entering multiple competitor domains into an exclusion list, use comma-separated values in a single field (e.g., competitor1.com, competitor2.com, competitor3.io) without http:// or www prefixes – you don't need to create separate fields for each domain.

  • Contact or opportunity is not correctly associated with a company: We require contacts/leads and opportunities to be associated with a company record for them to be pulled into a company-level exclusion.

  • The toggle to ‘proactively’ unenroll contacts or companies from exclusions is off: At the bottom of each exclusion, there is a toggle that enables us to proactively unenroll contacts or companies if they meet the criteria for an exclusion after the initial sequence enrollment period." alt="Image placeholder"/>

    If this is not toggled on for an exclusion, we will not proactively remove that contact or company. For example, let's say you have an exclusion for all companies that have 1+ open opportunities. Company A may be enrolled initially in a sequence and has no open opportunity associated at that time. Let's say after the initial enrollment and open opportunity is created for Company A - this toggle must be on for us to exclude Company A from active sequences at the time the opportunity is created.

  • Your CRM sync is not updated: If the new record was created recently, our sync may not have captured the new record. If it has been several hours and the record still has not pulled into your exclusion, please reach out to our support team!

  • You have recently connected your CRM with Unify: When you first connect your CRM with Unify, the initial sync can take anywhere from a few minutes to several hours, depending on how many records you have in your CRM. If you don't see a certain record in the exclusions in this case, it may be that we have not ingested it into our system yet.

  • CRM credentials have expired: If your CRM authentication has expired, the sync will stop working entirely, preventing exclusions from updating even if changes were made in your CRM. To resolve this, go to your CRM integration settings page and reauthenticate by clicking “change user” and logging in again with your credentials.

  • International domain variations and language differences: When excluding categories such as schools or government entities, remember that domains may vary by country (e.g., .edu.br, .ac.uk) and company names can appear in different languages. Add the appropriate domain patterns or criteria to capture all variations globally.

  • Exclusion conflicts with sequence settings: If you need to temporarily bypass global exclusions for a specific sequence (such as sending to existing customers), you can turn off the “unenroll from sequence” toggle in the relevant exclusion. This prevents the exclusion from retroactively removing contacts when you toggle exclusions off at the audience level. Remember to re‑enable this toggle after your sequence completes to maintain normal exclusion behavior.

  • Contact missing email address: Contacts without an email address do not sync to Unify and therefore cannot be included in exclusions, as email domains are used for de‑duplication. This also leads to audience count discrepancies: if your CRM shows more leads than appear in a Unify audience, the missing contacts likely lack email addresses. To recover them, you can upload a CSV of those contacts and use Unify’s enrichment feature to add email addresses, ensuring the full CRM database is represented.

Common use case – Excluding recently contacted people

If you want to prevent enrolling contacts that have been reached in the last month while keeping contacts that are already active in their sequences, create an exclusion with the criteria “Last Activity Date is less than 1 month ago” and leave the Exclude from Sequences toggle OFF. With the toggle off, the exclusion only blocks new enrollments and does not remove contacts that are currently enrolled. There is no need to add extra logic such as “Most Recent Sequence Status is not equal to ‘Started’”.

Salesforce field mapping verification for domain‑based exclusions

  • Check field mapping configuration: Go to Integrations > Salesforce > Field Mappings and confirm the account domain mapping points to the Salesforce field that holds the accurate domain value (typically the Website field). If the mapping points to a different or custom field, update it to the correct field, then wait for the next sync cycle (approximately 15 minutes) for the correction to take effect.

  • Check integration sync errors: You can check Integrations > Salesforce > Errors (READ) in Unify to see if specific accounts failed to sync due to missing or invalid domain data.

Audience-Level Exclusion Override Troubleshooting

Audience-level exclusion settings overriding universal exclusions: Universal exclusions can be toggled off at the audience level, which will prevent them from working even if they're enabled globally. Check your audience settings by going to the specific audience and reviewing which universal exclusions are enabled. Note that sequence-level exclusions always take precedence over both universal and audience-level settings.

Re-enrolling Previously Excluded Contacts

  1. Go to the Ruleset your sequence falls under (navigate to the sequence → Settings → Ruleset)

  2. Temporarily toggle off the exclusion that's blocking the contacts

  3. Wait approximately 30 minutes for the exclusion change to process and take effect

  4. Re-add/re-enroll the prospects from the list

  5. Toggle the exclusion back on to maintain normal exclusion behavior for future enrollments

Important: This procedure works at the sequence ruleset level. For contacts blocked by global exclusions, you must temporarily turn off the global exclusion itself (Settings > Organization > Exclusions), as audience-level or sequence-level settings cannot override global exclusions.

Sequence-Level Ruleset Settings

Check individual sequence ruleset configuration: Each sequence has its own ruleset settings that can override global and audience-level exclusions. If exclusions aren't applying to a specific sequence, navigate to the sequence → Settings → Ruleset to verify which exclusions are enabled for that sequence. Even if global exclusions are active, a sequence with exclusions toggled off in its ruleset will not apply those exclusions. You can also modify the default ruleset for all new sequences by going to Settings → Sequence → Ruleset.

Proactive Exclusion Timing and Frequency Details

While the published article explains what the proactive toggle does, users need specific technical details about how frequently the system checks for changes:

  • Update Frequency: CRM-based exclusions typically update every 15 minutes during active sequences, though in practice the delay between a CRM change and its reflection in Unify exclusions can vary and may take longer. If you've made a change in your CRM (such as closing an opportunity) and the exclusion hasn't updated after several hours, contact support for assistance.

Setting Expectations

  • If you create a new opportunity or update a company record that should trigger an exclusion, the system should detect and process the change within the regular sync cycle. However, if the exclusion hasn't updated after several hours, reach out to support. The proactive feature works automatically during this cycle - no manual action is required once the toggle is enabled.

Timing Considerations

  • For time-sensitive exclusions, be aware that CRM changes may take time to sync and reflect in exclusions. If you need immediate exclusion updates, contact support or manually pause contacts until the automatic system processes the change.

Understanding Contact Removal from Sequences

Contacts can be automatically removed from sequences for several reasons beyond exclusions.

  • Email opt-out: They clicked the email opt-out link (removes from all active sequences)

  • Exclusion match: They match an active exclusion with the Sequences toggle enabled (people‑ or company‑level) – the current system doesn't indicate which specific exclusion is causing the block

  • Company‑level exclusion: A company‑level exclusion is triggered (removes all associated contacts)

  • CRM‑driven exclusion: CRM condition changes meet exclusion criteria (e.g., opportunity created, field updates)

  • Mailbox ownership changes: The sender's mailbox ownership changes for the mailbox used to enroll the contact

  • Global exclusions override audience and sequence settings: Global exclusions will block enrollment even if exclusions are turned off at the audience or sequence level. If a contact matches a global exclusion (found in Settings > Organization > Exclusions), they cannot be enrolled in any sequence regardless of audience‑level exclusion settings.

  • Exclusion hierarchy: Exclusions follow a specific hierarchy: sequence-level ruleset settings take precedence over audience-level settings, which take precedence over global exclusions. However, if a global exclusion is enabled at both the global level AND at the sequence/audience level, it will block enrollment. Check all three levels (Settings > Organization > Exclusions for global, audience settings for audience-level, and sequence Settings > Ruleset for sequence-level) to understand which exclusions are actively being applied.

Note: When you modify exclusion settings (toggling exclusions on or off), allow approximately 30 minutes for these changes to process and take effect. Changes to global exclusions require up to 30 minutes to take effect system‑wide.

How to Identify Which Exclusion is Blocking a Contact

If a contact is being excluded from sequence enrollment and you need to identify the specific exclusion criteria causing the block:

Method 1: Check the Person Record in Unify

  1. Navigate to the contact's person record in Unify

  2. Look for the Exclusions section in the person record

  3. Review which exclusions are currently applied to this contact

Method 2: Audience Toggle Workaround

  1. Create a test audience with only the affected contact by setting the filter to email is equal to [contact's email address]

  2. Toggle exclusions on and off at the bottom of the audience settings to see which exclusion the contact falls into

  3. Wait approximately 30 minutes after making exclusion setting changes for the system to process the updates

  4. Check each exclusion individually – when you turn off an exclusion and the contact becomes eligible, you've identified the problematic exclusion

Method 3: Check Play Execution Logs

  1. Navigate to the Play in the Play Builder

  2. Click on the Execution Logs tab

  3. Look for the prospect's execution record to see enrollment status and any error messages

Method 4: Review Global Exclusion Settings

  1. Check global exclusions first – Go to Settings > Organization > Exclusions to see if the contact matches any global exclusions, as these override all other settings

  2. Review all your active exclusions to identify which criteria the contact or company meets

Method 5: Create Exceptions Within Exclusion Rules

If you need to allow specific contacts or companies through an exclusion while keeping the rule active for everyone else, you can add exception conditions directly to the exclusion rule.

  1. For company-level exclusions: Edit the exclusion rule, then add an “AND” condition: domain is not equal to [specific domain]. This allows the specified domain to bypass the exclusion while all other companies remain excluded.

  2. For contact-level exclusions: Edit the exclusion rule, then add an “AND” condition: email is not equal to [specific email address]. This allows the specified contact to bypass the exclusion while all other contacts remain excluded.

Blocked Steps Due to System State Issues

In rare cases, a sequence step may show as "blocked" even when all variables are properly resolved and the email content is complete. This can occur when the enrollment status becomes stuck in a blocked state due to system-level issues rather than configuration problems.

How to identify this issue:

  • The step shows as "blocked" in the enrollment

  • "See variables breakdown" shows all variables are properly resolved

  • The email content appears complete with no syntax errors or unresolved placeholders

  • Your Mailboxes tab shows green/healthy status

  • You've already verified there are no double brackets {{ }} or {INSERT ...} placeholders in the content

  • Thread root dependency: If the first email in a threaded sequence is skipped during enrollment, all subsequent reply emails in that thread are blocked because they depend on the initial email.

Resolution:

If you've confirmed all variables are resolved and the content is complete, but the step remains blocked, contact support. This requires an internal refresh tool to move the enrollment from blocked to queued status.

Resolution options: 1. Perform a manual template variable refresh: go to the sequence’s Enrollments tab, bulk‑select the blocked enrollments, and click “Refresh template variables”. 2. Skip all remaining email tasks for this enrollment and move on. 3. Unenroll and re‑enroll the contact so the sequence starts fresh from step 1. 4. Send one‑off emails outside the sequence if you still want to reach this person. Note: there is no way to retroactively fix the thread dependency for an existing enrollment once the first email has been skipped.

Important: To enroll someone who matches a global exclusion, you must temporarily turn off that specific global exclusion – audience‑level exclusion settings cannot override global exclusions.

Note: A more automated way to view exclusion reasons per contact is currently in development to make this debugging process easier.

This method allows you to pinpoint exactly which exclusion rule is affecting specific contacts, making it easier to adjust your exclusion settings or understand why certain contacts aren't being enrolled.

Common Reasons Contacts Fail to Enroll (Non-Exclusion Related)

Beyond exclusions, contacts may fail to enroll in sequences for several operational reasons:

  • Sequence is paused: If a sequence is paused (check the toggle at the top right of the sequence page), enrollments will queue up in a backlog rather than being processed. Unpause the sequence to allow queued enrollments to begin sending. If you don’t want to continue with the queued enrollments, bulk select all contacts and unenroll them before unpausing.

  • Already enrolled in another active sequence: Contacts cannot be enrolled in multiple sequences simultaneously. If a contact is already active in another sequence, they will be blocked from new enrollments until the current sequence completes or they are manually removed.

  • Re‑enrollment cooldown period: Sequence re‑enrollment rules may prevent contacts from being added again too soon after completing or exiting a previous sequence. Check your sequence settings for re‑enrollment restrictions.

  • Daily sending caps reached: If your daily sending limit has been reached, contacts will queue for enrollment rather than being immediately added to the sequence. They will be enrolled once capacity becomes available.

  • Company‑level enrollment caps: Limits on how many contacts from the same company can be enrolled simultaneously may prevent additional contacts from that company from being added.

  • Routing failures: If using routing logic in your Play, contacts may fail to enroll if there is “No routing target” available or no eligible path matches their criteria.

  • Audience propagation delay: If you recently updated your audience criteria, allow 15‑30 minutes for changes to fully propagate through the system before expecting enrollment.

Play Re-Run Cooldown Technical Details and Workarounds

  • Minimum Cooldown Limitation: Play re-run cooldowns cannot be set to 0 days – the minimum is 1 day.

  • Immediate Re-Execution Workaround: If you need to immediately re-execute a Play on the same audience without waiting for the cooldown period, duplicate the Play and run the duplicate instead of re‑running the original.

  • Settings Location and Timing: Navigate to Settings → Organization → Sequences → Rulesets to configure re‑enrollment restrictions. Allow 30‑60 minutes for changes to propagate after adjusting cooldown settings.

Advanced Sequence Enrollment Conflict Resolution

When you need to resolve enrollment conflicts for multiple contacts simultaneously, you can use the bulk unenrollment feature:

  1. Go to Sequences and select the sequence containing the conflicting contacts

  2. Use the Bulk Actions dropdown to select Unenroll Selected

  3. Choose the contacts you want to unenroll from the current sequence

  4. After processing, re‑trigger your play or use bulk enrollment for the new sequence