Article summary
Triage years of Facebook inquiries by evidence strength, repairing provenance, permission, phone versions and duplicate contacts without reactivating unexplained records.
Cleaning historical Facebook inquiries is not “run a check and delete unregistered phones.” It is data forensics. Old forms, message exports, sales spreadsheets and CRM may have different dates, purposes and keys. Start by establishing what each record can still prove, not whether it can still be reached.
Classify provenance into four evidence levels
| Level | Evidence | Handling |
|---|---|---|
| A | lead_id, form, time and permission complete | Eligible for current-rule review |
| B | Inquiry content and time, incomplete scope | Restrict to service history |
| C | Phone and sales note only | Quarantine; no automatic marketing |
| D | Purchased, copied or unexplained | Stop and delete under policy |
Freeze the raw archive first
Hash every file and record file_name, owner, date_range and column_dictionary. Do not deduplicate, change country codes or fill blanks in the only copy. Establish a read-only raw domain and a working copy.
Rebuild lead-to-contact history
Recover lead_id, submitted_at, campaign/form clues and sales owner where possible. Retain several inquiry events for one person and create a unified contact view through contact_id. Event history must not disappear under “deduplication.”
Interpret permission from the original language
| Historical record | Potential current scope | Limit |
|---|---|---|
| Explicit Facebook reply request | Fulfill the request / reasonable service | No automatic channel expansion |
| Explicit WhatsApp selection | Assess original purpose and retention | Check suppression |
| “Agree to terms” only | Retrieve the terms version | Do not assume marketing |
| No evidence | Not marketable | Checking cannot repair it |
Version phone cleanup through time
Store phone_raw, phone_normalized, valid_from, valid_to, country_evidence and normalization_version. An old phone may have been reassigned. A current platform registration result does not prove that the old customer still holds it.
When Facebook Registration is appropriate
Only the smallest subset with defensible provenance and current purpose becomes a one-phone-per-line TXT. AIPUSH exports phone and registration result. The output enters dated_observation and does not determine retention, identity or permission.
Merge duplicate contacts on evidence
Same phone, email, name or company is only a candidate match. Use deterministic keys and accountable review. Shared business phones, common names and reassignment can create false merges. Store survivor_id and an undo record for every merge.
Route missing and conflicting data
Missing country, ambiguous source, conflicting permission and unreconciled rows get separate queues and owners. Do not improve completeness with default country or default consent. Records that cannot be repaired stop use or are deleted under retention policy.
Set a high bar for recontact
Even historical permission may be stale after years without interaction. Consider context, time and applicable rules. Prefer a new user-initiated action. If a current service relationship justifies contact, identify the business and historical source and make exit easy. Do not run a mass “reactivation test.”
Measure cleanup, not messages sent
Track explainable provenance, defined permission, reversible merges, resolved phone exceptions, suppression execution and deletion completion. Recontact volume and technical registration rate do not prove project success.
When the historical database is clean
Every retained record has an evidence level, data owner, lawful purpose, phone history, permission state and expiry. Unexplained records no longer feed marketing. A smaller explainable CRM is more valuable than an old table claiming everyone remains contactable.
