Skip to main content

Why we cap your sending

iMessage availability is reputation-driven. When an Apple ID sends a lot of first-touch messages in a short window — especially to numbers that don’t have iMessage (Android, landlines) — Apple’s spam scoring picks up the pattern and can silently flag the Apple ID. Once flagged, iMessage delivery degrades or stops entirely, and there’s no API on Apple’s side to clear it. Tuco enforces three layered caps on every line so a single bulk send can’t permanently damage your line’s reputation. Caps apply uniformly across all send paths: Quick Send, campaigns, dashboard, HubSpot plugin, GHL plugin, and the API.
Caps are per line, not per workspace. If you have multiple lines, each one gets its own daily and hourly budget.

The three caps

Daily new-contact cap

Default: 50 first-touch sends per line per day.Counts the first message ever sent from this line to a particular recipient (phone or email). Follow-up messages to recipients you’ve already contacted do not count toward this cap.Resets at 00:00 UTC.

Daily total messages cap

Default: 75 total sends per line per day.Counts every outbound message regardless of whether the recipient is new or known. Includes follow-ups, reactivation messages, and one-off replies.Resets at 00:00 UTC.

Hourly first-touch cap

Default: 50 first-touch sends per line per hour.Smoothing layer to prevent any single hour from concentrating too many “is this number on iMessage?” lookups against your Apple ID. For default-cap lines this is functionally a no-op — the daily cap blocks first. For enterprise lines with raised daily caps (200+), it stops 5-minute blasts.Resets every hour on the UTC hour boundary. Email-channel lines are exempt.

What “first-touch” means

A send is first-touch when the line has not previously sent any outbound message to that recipient — measured by phone number, email address, or leadId, whichever identifies the contact. We count any outbound that reached Apple’s availability system as “previously sent” — that includes successful delivery, soft fallback to SMS, and even messages currently pending dispatch. The only exclusions are cancelled and failed (genuinely-aborted sends). This means: if a previous send to Alice ended up as an SMS fallback, the next send to Alice is not first-touch. She’s already known to this line.

What happens when you hit a cap

When a send would exceed any cap, Tuco does not drop the message. Instead:
  • Quick Send / API: the response includes an error like "Daily new contact limit reached (50). This line has already contacted 50 new leads today." Your client can choose to retry tomorrow or route to a different line.
  • Campaigns: the campaign processor reschedules the message to fire when the cap resets (the next workspace-day boundary or, for hourly cap, the next hour). No messages are lost.
  • HubSpot / GHL plugins: the integration returns the cap-reached error; your CRM workflow can branch on it.
You can monitor your current usage in the app under Lines → [line] → Today’s usage.

Raising the caps

The defaults are sized for typical outbound — small enough that a single line stays well within Apple’s reputation tolerance, large enough that day-to-day operations aren’t constrained. If your workflow legitimately requires higher volume, contact us at support@tuco.ai with your use case. We can raise either limit per-line on the Growth and Scale plans. The hourly cap scales proportionally with the daily cap.
Raising caps doesn’t make your line immune to Apple’s spam scoring. The caps exist precisely because high-volume first-touch sending damages Apple-ID reputation. We can adjust the caps; we can’t change how Apple grades your sending behaviour.

If we’ve reset your line after an Apple flag (or you’re starting on a fresh Apple ID), use a conservative warm-up:
WeekDaily new-contact cap
Week 110
Week 220
Week 330
Week 4+Back to your normal cap
Spread sends across business hours; don’t fire your full daily budget in one 30-minute window.

How to tell if you’re approaching a cap

In the app:
  1. Go to Lines in the left nav.
  2. Click into a line. The “Today’s usage” panel shows your current new-contact count and total-message count vs. the cap.
Via Loki (for ops users):
{component="tuco-139.cap.reservation", event="cap.reservation.granted"} | json
  | lineId="<your-line-id>"
  | line_format "{{.newAfter}}/{{.dailyNewLimit}} new, {{.totalAfter}}/{{.dailyTotalLimit}} total"