> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tuco.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Why Didn't My Contact Get a Message?

> A step-by-step checklist for when a Tuco contact wasn't messaged: missing phone, wrong CRM field, not on iMessage, opt-out, line down, daily cap, or first-message attachment.

**If a contact wasn't messaged, it's almost always one of six things: (1) no phone number Tuco can read, (2) the number isn't on iMessage and you have no SMS fallback, (3) the contact opted out / is on your DNC list, (4) the line is paused or restricted, (5) a daily cap deferred the send, or (6) it was a blocked first-message attachment.** Work down this list in order — the first match is usually the cause.

## 1. No recipient — or the phone is in a CRM field Tuco isn't reading

The most common cause. If a lead has no phone (or email), the send fails with `missing_recipient`.

* **Check:** open the lead in Tuco — is there a phone number on it?
* **HubSpot / GoHighLevel:** Tuco reads the standard `phone` field. If your real number lives in a **custom field** (e.g. "Mobile", "Cell", "Phone 2"), map it so Tuco imports it as the phone — see [HubSpot](/guides/send-imessage-from-hubspot) / [GoHighLevel](/guides/send-imessage-from-gohighlevel) mapping.
* **Fix:** correct the field mapping and re-sync, or add the number to the lead.

## 2. The number isn't on iMessage and no fallback is set

If a contact isn't reachable on iMessage and you haven't configured a fallback, the blue-bubble send has nowhere to go.

* **Check:** the lead's [iMessage availability](/guides/check-imessage-availability) — is it ⚪ unavailable?
* **Fix:** set your SMS fallback under **Settings → When iMessage isn't available**. In GoHighLevel you can also add the `forcefallback` tag to push a contact to SMS. Without a fallback configured, unavailable contacts are flagged `fallback` but not delivered.

## 3. The contact opted out or is on your DNC list

Tuco won't message contacts you've suppressed.

* **Check:** the lead for an opt-out flag or DNC entry ([DNC](/features/dnc), [compliance](/guides/imessage-compliance-tcpa)).
* **Fix:** this is working as intended — don't message opted-out contacts. Remove from DNC only with fresh consent.

## 4. The line is paused, offline, or restricted

* **Check:** [line health](/troubleshooting/line-health-and-restrictions) in the dashboard.
* Note the continuity rule: if a line goes offline mid-campaign, contacts that **already** got a message from it have their remaining sends marked `failed` (to preserve the thread); contacts with only queued sends are reassigned to another healthy line.
* If Apple has **restricted** the line, new/cold recipients silently stop resolving. See [Line health & Apple restrictions](/troubleshooting/line-health-and-restrictions).

## 5. A daily cap deferred the send (not dropped)

Hitting a line's daily limit does **not** drop or fail the message.

* **Check:** the message status — is it `queued` or `scheduled`?
* **Fix:** nothing. It sends automatically in the next window ([message statuses](/troubleshooting/message-statuses)). Add more lines to raise total daily capacity.

## 6. The first-ever message was an attachment or voice note

Attachments (including native voice notes) are **blocked on the first message** to a brand-new contact.

* **Fix:** warm the contact up with a plain text message first; the attachment lands on any later step.

## Still shows "sent" but not received?

Then it left Tuco fine — the issue is downstream (recipient not on iMessage, line restricted, wrong number, blocked/DND, or a carrier downgrade). See [Message statuses: Sent vs Delivered](/troubleshooting/message-statuses#it-says-sent-but-my-lead-never-got-it).

## Frequently asked questions

<AccordionGroup>
  <Accordion title="A contact in my campaign was skipped entirely — why?">
    Usually no readable phone number (or it's in a custom CRM field Tuco isn't mapped to), the contact is opted out / on DNC, or it isn't on iMessage and no fallback is set. Check the lead's phone and availability first.
  </Accordion>

  <Accordion title="My HubSpot contacts have phones but Tuco says missing_recipient.">
    Tuco reads the standard `phone` field. If your numbers live in a custom property, map that property to phone in Integrations → CRM → Property Mapping, then re-sync.
  </Accordion>

  <Accordion title="Do daily limits cause contacts to be skipped?">
    No. Over-cap sends are deferred to the next window as `queued`/`scheduled`, not skipped or failed. Add lines to increase capacity.
  </Accordion>

  <Accordion title="Why did my voice note / image not send to a new contact?">
    Attachments are blocked on the first-ever message to a contact. Send a text first; attachments work on later messages.
  </Accordion>
</AccordionGroup>

<Card title="Message statuses explained" icon="list-check" href="/troubleshooting/message-statuses">
  What sent, delivered, fallback, and failed each mean.
</Card>
