Keep source context on every record
Store the search query, rank, capture time, and Maps URL with each business. A business can appear in several queries, and that match history is useful even after duplicate records are merged.
Use layered deduplication
Prefer a stable listing identifier when available. Fall back to normalized website domain, phone number, or a combination of name and address. Do not merge records by business name alone.
Separate missing data from negative data
A missing website field means the extractor did not find a public website in that listing state. It does not prove the business has no website. Preserve null values and verification status instead of converting uncertainty into a false statement.
Apply responsible outreach rules
Public listing data does not remove obligations under platform terms, privacy law, telemarketing rules, or email regulations. Verify records, provide relevant outreach, respect opt-outs, and avoid collecting data unrelated to the business purpose.

