# Clean scraped leads before CRM import

**Use case:** 

Deduplicate and normalize scraped company/contact leads into CRM-ready rows with domains, emails, phones, confidence scores, and match reasons.

## Input

```json
{
  "records": [
    {
      "id": "gmaps-1",
      "company": "Northstar Dental LLC",
      "website": "https://northstardental.example",
      "email": "hello@northstardental.example",
      "phone": "(415) 555-0101"
    },
    {
      "id": "dir-2",
      "companyName": "North Star Dental",
      "domain": "northstardental.example",
      "phone": "415-555-0101"
    },
    {
      "id": "event-3",
      "organization": "Harbor Analytics Inc.",
      "website": "https://harboranalytics.example",
      "email": "sales@harboranalytics.example"
    },
    {
      "id": "csv-4",
      "businessName": "Harbor Analytics",
      "domain": "harboranalytics.example",
      "email": "info@harboranalytics.example"
    },
    {
      "id": "gmaps-5",
      "company": "Brightline HVAC",
      "website": "https://brightlinehvac.example",
      "phone": "+1 312 555 0199"
    }
  ],
  "dedupMode": "balanced",
  "companyFields": [
    "company",
    "companyName",
    "organization",
    "organizationName",
    "businessName",
    "name"
  ],
  "domainFields": [
    "domain",
    "website",
    "url",
    "companyWebsite",
    "organizationDomain"
  ],
  "emailFields": [
    "email",
    "businessEmail",
    "workEmail",
    "contactEmail"
  ],
  "phoneFields": [
    "phone",
    "phoneNumber",
    "mobile",
    "businessPhone"
  ],
  "includeOriginalRecord": false,
  "maxRecords": 5000
}
```

## Output

```json
{
  "mergeDecision": {
    "label": "Merge decision",
    "format": "string"
  },
  "mergeConfidence": {
    "label": "Merge confidence",
    "format": "number"
  },
  "clusterSize": {
    "label": "Cluster size",
    "format": "integer"
  },
  "canonicalCompanyName": {
    "label": "Company",
    "format": "string"
  },
  "normalizedDomain": {
    "label": "Domain",
    "format": "string"
  },
  "normalizedEmail": {
    "label": "Email",
    "format": "string"
  },
  "normalizedPhone": {
    "label": "Phone",
    "format": "string"
  },
  "matchReasons": {
    "label": "Match reasons",
    "format": "array"
  },
  "warnings": {
    "label": "Warnings",
    "format": "array"
  }
}
```

## About this Actor

This example demonstrates how to use [Lead List Deduplicator & Normalizer](https://apify.com/webdata_labs/lead-list-deduplicator) with a specific input configuration. Visit the [Actor detail page](https://apify.com/webdata_labs/lead-list-deduplicator) to learn more, explore other use cases, and run it yourself.