> ## Documentation Index
> Fetch the complete documentation index at: https://help.pipelime.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# No leads matched yet

> Sourcing ran and found nothing. Check the source status, the quality gate, the targeting width and your credit balance.

export const UiPath = ({children}) => {
  const parts = String(children).split(/\s*(?:→|>)\s*/).filter(Boolean);
  return <span className="pl-path">
      {parts.map((part, index) => <span key={`${index}-${part}`}>
          {index > 0 && <span className="pl-path__sep">→</span>}
          {part}
        </span>)}
    </span>;
};

export const Screenshot = ({id, alt, caption, frame = 'browser', url, marks = [], lang = 'en', workspace = 'northwind-outbound'}) => {
  const src = `/images/screenshots/${lang}/${id}.png`;
  const chrome = url ? `app.pipelime.ai/${workspace}${url}` : 'app.pipelime.ai';
  return <figure className={`pl-shot pl-shot--${frame} not-prose`}>
      <div className="pl-shot__frame">
        {frame !== 'bare' && <div className="pl-shot__bar">
            <span className="pl-shot__dots">
              <span className="pl-shot__dot" />
              <span className="pl-shot__dot" />
              <span className="pl-shot__dot" />
            </span>
            <span className="pl-shot__url">{chrome}</span>
          </div>}
        <div className="pl-shot__media">
          <img src={src} alt={alt} loading="lazy" />
          {marks.map(mark => <span key={mark.n} className="pl-shot__mark" style={{
    left: `${mark.x}%`,
    top: `${mark.y}%`
  }} aria-hidden="true">
              {mark.n}
            </span>)}
        </div>
      </div>
      {caption && <figcaption className="pl-shot__caption">{caption}</figcaption>}
    </figure>;
};

Your agent's **Dashboard** shows **No leads matched yet**. Sourcing has looked at real companies and none of them produced a single lead for this agent.

<div className="pl-availability">
  <div className="pl-availability__row">
    <div className="pl-availability__label">Where</div>
    <div className="pl-availability__value"><span className="pl-path">Outreach<span className="pl-path__sep">→</span>AI Agents</span></div>
  </div>

  <div className="pl-availability__row">
    <div className="pl-availability__label">Your role needs</div>
    <div className="pl-availability__value">Read access to AI Agents <code>read-campaigns</code>. Admin, Member and Viewer have it by default.</div>
  </div>

  <div className="pl-availability__row">
    <div className="pl-availability__label">To create or change</div>
    <div className="pl-availability__value"><code>create-campaigns</code> to add one, <code>update-campaigns</code> to change one, on top of the permission above.</div>
  </div>

  <div className="pl-availability__note">If you cannot find this in your sidebar, your workspace may have a custom menu configuration. Contact support and we will check it for you.</div>
</div>

## What the banner means

The full text, quoted exactly: *"Sourcing ran but nothing cleared your match criteria. Broadening the targeting usually helps."*

<Screenshot id="troubleshooting/no-leads-found--alert" url="/ai-agents/12" alt="The 'No leads matched yet' banner on an agent's Dashboard tab, with its Adjust targeting button" caption="A representative example, reproduced rather than seeded. This banner shows on the agent's own Dashboard. It never counts towards the issue pill on the AI Agents list: that card deliberately leaves the lead count out of the check it runs, so it can never reach zero there." marks={[{ n: 1, x: 88, y: 50 }]} />

Its button, **Adjust targeting** (1), does exactly one thing: it switches you to this agent's **Sources** tab. Nothing about any source changes until you open one yourself and edit something.

Three things all have to be true before it appears:

* the agent has at least one source,
* those sources have analyzed at least one company between them, and
* the number of leads carrying this agent's tag is zero.

So it is never the first thing a new agent shows you. It needs real work behind it, and it clears as soon as one lead lands on the tag.

## Three different kinds of nothing

A quiet Sources tab has more than one cause, and only the third is this banner.

### A source that has not started

A source that has not run its first search shows a **Pending** chip, whose tooltip says the reason plainly: *"Press the start button to begin lead generation"*. Press the play button on its row and it starts. The same button restarts a source you paused by hand; on any other status it is disabled, because those pauses need their cause fixed first.

If you launched the agent yourself a short while ago, the Dashboard also carries a progress card above any banners, narrating searching, scoring, finding decision makers, verifying emails and preparing outreach, with a live company count and lead count under it. That card swaps its narration for **Sourcing is queued — this can take a while**, noting that this can take a while, once enough time has passed with the agent's company count still at zero. Both of those are an earlier kind of nothing than this banner: sourcing has not come back with an answer at all.

### A source that has stopped

* **Max Companies**: the source analyzed as many companies as its total limit allows and paused itself. It genuinely spent its whole budget.
* **Finished**. The search itself ran out: every page of results was worked through. A search that came back with no companies *at all* is also marked **Finished**, straight away, so this chip is not proof that anything was analyzed.
* **No Credits**: the workspace ran out of credits mid-search.

None of these three, on its own, says the source found nobody. What matters is what they sit next to.

### Sourcing that ran and matched nobody

This banner. It needs analyzed companies behind it, so a source that stopped before analyzing anything cannot cause it, whatever its chip says.

The combination worth reading is **Max Companies** *and* this banner together: the source used its entire allowance and still produced no leads. There the useful move is loosening a filter, not raising the limit.

## What to do

### Read the source rows first

Click **Adjust targeting**, or open <UiPath>Outreach → AI Agents</UiPath> yourself, open the agent and go to its **Sources** tab.

<Screenshot id="troubleshooting/no-leads-found--sources" url="/ai-agents/12?tab=sources" alt="The Sources tab on an agent with one source, Supply chain SaaS for EMEA, showing its Active status chip, the Companies, Daily and Leads stat columns, and the All/Active/Paused/Finished filter chips above the list" caption="Companies counts analyzed companies only, and Leads is counted per source. With more than one source, that column tells you which one is the empty one." />

Two things on this screen mislead people:

* The filter chips across the top group **Pending** into the same **Active** bucket, so a source that has never run can hide behind an **Active** filter. The chip on the row itself is the real status.
* **Companies** counts analyzed companies only. Companies turned away by the quality gate are counted separately, so a high gate reads as a **Companies** number that barely climbs: a source that looks stalled rather than one with real progress and no leads.

<Note>
  Starting, pausing and editing a source needs the `update-lead-generations` permission. Admin and Member have it; Viewer does not, and sees the rows read-only. Adding a source needs `create-lead-generations`, with the same three roles.
</Note>

### Understand why an analyzed company can still leave you with nothing

Sourcing almost never walks away from an analyzed company empty-handed. Once it finds even one real person there, decision-maker selection (a separate scoring pass from the quality gate, run over each candidate rather than over the company) keeps the best-ranked one as a lead even when nobody clears its bar, rather than skip the company. That is the at-least-one-contact-per-company guarantee behind [decision-maker targeting](/en/finding-leads/decision-maker-targeting). A lead is never removed afterwards for failing email lookup or verification either, so once it exists it stays in the count.

The dead end that does leave a company with nothing: our data provider sometimes has no employee data for a company's domain. When that happens the company keeps its analyzed status, nothing is created for it, and no setting of yours caused it. It is a gap in what the provider has indexed for that one company.

That is worth knowing before you go hunting for a filter to blame. For the banner to appear, *every* analyzed company has to have come up empty like that.

### Check the quality gate

Open the source's overflow menu and choose **Edit source**, then expand **Pace & limits**: **Quality gate (optional)** is there, off unless you turned it on. Its own subtitle explains the tradeoff: *"Only contact companies whose AI match score clears this bar"*, aiming for fewer, better leads. Companies are scored against what you wrote in **What are you looking for?**, and a company that gets a score below your bar is marked discarded instead of analyzed.

So the gate is not what leaves an analyzed company empty, but it is the usual reason a **Companies** count sits still. If yours is stuck, turn the gate off or lower the bar. See [Quality gate and match score](/en/finding-leads/quality-gate-and-match-score) for how the scoring works.

**Edit source** is only offered for a source built with the current builder; a legacy list has no in-app editor here.

### Widen the targeting

A data-provider gap on one company is not something a toggle fixes, so the lever that matters is *which* companies get analyzed at all. The top of the same **Edit source** dialog holds those filters: **Industry**, **Company locations** and **Decision-maker roles**, plus **Company size** and **Exclude locations** under **Advanced targeting**. Pointing the search at a different slice of the market changes the companies it brings back. See [Decision-maker targeting: filters explained](/en/finding-leads/decision-maker-targeting) for what each one widens or narrows.

### Check your credit balance before you re-run

Companies were already analyzed here, so credits are not why *this* run found nobody. But if the same Dashboard also shows **Sourcing paused** (credits exhausted), that changes the story: the source stopped looking for new companies before it had a fair chance, and the fix is credits, not a filter. See [What consumes credits](/en/billing/what-consumes-credits).

## How to stop it happening

There is no setting that rules this out. It takes a run of companies our data provider happens to have nothing on, and that is outside the workspace's control.

What you can do is give the source more companies to be wrong about (raise its total limit, or widen the targeting) and check back once it has worked through more of them. A single source with a narrow, unusual company profile is the shape most likely to hit the same gap repeatedly.

## Related

<CardGroup cols={2}>
  <Card title="Quality gate and match score" icon="funnel" href="/en/finding-leads/quality-gate-and-match-score">
    How a company gets scored, and what the quality gate discards before you pay for a contact.
  </Card>

  <Card title="Decision-Maker Targeting: filters explained" icon="crosshair" href="/en/finding-leads/decision-maker-targeting">
    What each targeting filter actually widens or narrows.
  </Card>

  <Card title="What consumes credits" icon="coins" href="/en/billing/what-consumes-credits">
    What a credit actually buys, for when a source stops mid-search.
  </Card>

  <Card title="No sending channel connected" icon="send" href="/en/troubleshooting/agent-not-sending">
    Every reason an agent sends nothing, in the order worth checking.
  </Card>
</CardGroup>
