# Why did a contact not sync to my CRM?

> Sync is running but one contact never arrived: placeholder email addresses, required fields, field lengths, and record types that only travel one way.

**Sync rejects a record rather than sending a broken one. The usual reasons are a placeholder email address on a contact that has no real one, a required field the CRM insists on and Reply has empty, or a value longer than the CRM's field allows.**

_Status: Reviewed – written against Reply's product documentation on 2026-09-21, not yet confirmed against the running product._

## Quick fix

1. Open the contact in Reply and look at its email. A generated placeholder address is not sent to a CRM that matches on email.
2. Check the fields your CRM marks as required; a record missing one is refused by the CRM, not by Reply.
3. Check the length of long values, particularly job titles, company names and notes. A value over the CRM's field length is rejected rather than trimmed.
4. Check the sync log for that run – rejected records are reported there with a reason.
5. Fix the record and wait one cycle, or run a manual sync.

Didn't work? [Contact Reply support](https://support.reply.io/); the team can check your account directly.

## Symptom

Most contacts sync. One, or a small group, never arrives. The integration is healthy and the run completed.

## Most likely causes

| Cause | How to recognize it |
| --- | --- |
| **The contact has a placeholder email** | The contact came from a LinkedIn source with no real address. Reply gives it a generated one, and that is deliberately not pushed to a CRM keyed on email |
| A field the CRM requires is empty | The same records fail every run, and they share a blank field |
| A value is too long for the CRM's field | Affects records with unusually long titles, company names or free text |
| The sync step only runs one way | Some record types only travel from Reply to the CRM and never back. Check the step's direction |
| The field is not mapped | The contact syncs, but the value you are looking for does not |
| The field is excluded from mapping | Some CRM fields are not offered for mapping at all, so no mapping exists to make |
| The contact was created after the run | It arrives on the next cycle |

## Diagnostic checklist

1. **Check the email first.** A placeholder address explains a whole category of "LinkedIn contacts never sync" and is invisible unless you look.
2. **Compare a failing record with a working one.** The difference is usually a single empty or oversized field, and comparison finds it faster than reasoning.
3. **Read the run log.** Rejections are reported with a reason; the log distinguishes "not attempted" from "attempted and refused".
4. **Check the step's direction** before assuming a fault. A record type that only flows one way will never appear in the other.
5. **Check the mapping**, not just the sync, when the contact is there but a field is empty.

## Resolution

### The contact has a placeholder email

Either find a real address for the contact, or change the sync step to match on something other than email where your CRM supports it. A contact with no real address is intentionally not pushed into a CRM that identifies people by email.

### A required field is empty

Fill it in Reply, or make the field optional in the CRM. Filling it in bulk is usually easier: filter the contacts that fail, and update them by import.

### The value is too long

Shorten the value in Reply. Reply does not silently trim to fit; a record that does not fit is rejected, which is safer but means you have to act.

### The direction is wrong

Open the step and check which way it runs. If you need the opposite direction, some record types support it and some do not; contacts and accounts are the ones that normally travel both ways.

### The field is not mapped

Add the mapping on the step. If the field does not appear in the list at all, it is one the integration does not expose, and no mapping will make it appear.

## Verification

Fix one record, run a manual sync, and confirm that specific contact arrives. Then check the run log reports no rejections for it. Fixing one proves the cause before you apply it to the rest.

## Prevention

- Fill your CRM's required fields in Reply before the first sync, not after the rejections appear.
- Keep an eye on contacts with placeholder emails if your CRM matches on email; they are a permanent category, not a one-off.
- Read the run log weekly. Rejections accumulate quietly.
- Map fields when you set the integration up, rather than discovering gaps later.

## FAQ

### Why do LinkedIn contacts never reach my CRM?

They usually have no real email address, and the placeholder Reply assigns is not pushed to a CRM that identifies contacts by email.

### Does Reply shorten a value that is too long?

No. The record is rejected rather than silently truncated, so nothing arrives half-correct.

### Can I sync every field?

No. Some CRM fields are not offered for mapping. If a field is not in the list, it is not available rather than hidden.

## Still stuck? Contact Reply support

If these steps didn't solve the problem, the Reply support team can look at your
account directly. Open the [Reply Help Center](https://support.reply.io/) and send
the team a message.

To get an answer faster, include:

- which CRM, and one contact that did not arrive
- that contact's email address in Reply – whether it is a real one
- what the run log says for that sync
- which fields your CRM marks required

Don't send passwords, API keys, or access tokens.

## Related

- [Why did my CRM sync stop?](/troubleshooting/crm-sync-stopped/) – when nothing syncs at all
- [Sync Reply with a CRM](/workflows/sync-reply-with-a-crm/)
- [Why were contacts not imported?](/troubleshooting/contacts-were-not-imported/)

## Build with Reply

- REST API: [Contacts](https://docs.reply.io/api-reference/introduction) – read a contact's fields before syncing
- MCP: [docs.reply.io/mcp](https://docs.reply.io/mcp/overview) – inspect a contact from an assistant
