Attio rate limit: some rows failed after retries

Attio throttled the import and some rows still failed after Shuttio's automatic retries; press "Retry all errors" to retry those rows.

Last updated: 7 Nov 2026

What you see

The Errors tab shows a row headed "Attio rate limit". A line below it reads: "Attio temporarily throttled the import. The migration backs off and retries automatically; rows that still failed hit the retry cap." The next line reads: Press "Retry all errors" above. Source record ids show inline for 3 or fewer records, and behind a toggle such as "Show 12 records" for more. "Technical detail" holds the raw error text, which includes Attio's response.

Why it happens

Attio answered a request from Shuttio with a 429, its "too many requests" status. Shuttio then holds further requests until the wait Attio asks for in its Retry-After header has passed. The hold is capped at 30 seconds. When Attio sends no usable wait, Shuttio waits 1 second before the first retry, 2 before the second, and so on up to 5. Then it sends the call again.

Shuttio retries each call up to 5 times. A row whose call Attio still refuses after the fifth retry fails with this error.

How to fix it

  1. Press "Retry all errors" on the Errors tab. It retries the failed rows and is free. How Retry all errors works.
  2. Records already in Attio are matched instead of duplicated.

If the same rows fail again after a retry, email help@shuttio.com with the migration number from the run page's side rail.

Not answered here? Email help@shuttio.com.