Hi there
Please try this
Having contact synchronization turned on for multiple email accounts (like Gmail, Outlook, or Yahoo) causes different lists to merge. You want iCloud to be your only source.
- Open your iPhone Settings.
- Tap Mail, then tap Accounts.
- Go through your email accounts (Gmail, Outlook, Yahoo, etc.) one by one.
- Turn OFF the switch for Contacts on every non-Apple account.
- Choose "Delete from My iPhone" if prompted (don't worry, the master copies usually stay on those email servers, but they will stop polluting your phone).
- Ensure that only iCloud is turned on for your contacts under your main Apple Account settings (Settings > [Your Name] > iCloud > See All > Contacts should be toggled ON).
Sometimes deleted contacts remain hidden inside the cloud server and get re-downloaded to your phone during updates.
- Log into iCloud.com using a computer or your phone’s web browser.
- Click on Contacts.
- Review your list here to permanently delete any "zombie" contacts that keep coming back.
- If a huge chunk of old data is messed up, scroll to the bottom of iCloud.com, go to Data Recovery, and select Restore Contacts to pick a clean version from a date before these numbers reappeared.