## TL;DR

The Salesforce duplicate rule is not catching web-to-lead duplicates. Check the rule's matching criteria, the objects it covers, and whether web-to-lead bypasses it.

## Error

```text
duplicate rule not firing on web-to-lead
```

## Steps

1. Open the duplicate rule and check its matching criteria Expected: you see what it compares.
2. Confirm the rule covers the Lead object and the web-to-lead path Expected: no scope gap.
3. Test with a known duplicate via the web form Expected: you reproduce it.
4. Tighten the matching criteria or add a flow to catch the rest Expected: duplicates are caught.

## When to use

- Duplicate rule misses web-to-lead
- The rule's scope or criteria exclude it

## When not to use

- The rule fires elsewhere (then the web path differs)
- Matching is too strict (then loosen the criteria)

## Tool compatibility

- Salesforce duplicate management
- Web-to-lead

## Variant phrasings

### duplicate rule not firing web-to-lead

Check the rule's scope and matching criteria.

### salesforce duplicate rule missed

Same: web-to-lead may bypass the rule.

## Why it happens

Web-to-lead creates records through a different path that duplicate rules may not cover. Agents assume the rule is global.

## Edge cases

- Duplicate jobs run on a schedule; real-time blocking needs the rule active
- Custom matching needs the right fields indexed

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_N9fenF_bJiOTXGVSpB23FA
