When a post doesn't go out

Guardrail blocks, expired sign-ins, failed and partial deliveries — and what fixes each.

My post was blocked before it was even scheduled

A guardrail stopped it, and the message names the exact rule it hit. Guardrails are yours — banned words, a link policy, a daily post cap, brand tone, banned topics — and you edit them on the Guardrails page, which also lists the last few blocks.

Guardrails read everything that would go out: the main caption, any per-platform or per-account override, a first comment on X or Instagram, and every tweet in a thread. That's deliberate, so an override can't smuggle text past a rule you set.

Fix the wording and submit again. Nothing is lost, and nothing was published.

Why won't it let me post more to Instagram or TikTok today?

Those two platforms cap how much one account may publish in a day, so xpost throttles before they do: 100 posts per Instagram account and 15 per TikTok account in any rolling 24 hours. These aren't settings — they're the platforms' rules.

If a post was already scheduled when the cap filled up, it isn't failed. It waits and retries every few minutes until the window frees, without burning a retry.

A post failed. What now?

Open Receipts. There's one row per account with the platform's own error text — not a generic 'something went wrong'.

xpost tries three times, roughly a minute apart, before it calls a delivery failed. Retrying by hand before that is wasted effort.

The two common causes read differently: sign-in expired means reconnect the account (see below) and post again; anything else is usually the platform rejecting the content — a video too long, a missing image, a caption over the limit. What each platform accepts covers most of those.

It says the post was 'partial'

Some accounts got it, some didn't. Every account is delivered to independently, so a broken connection on one platform doesn't hold up the rest.

Receipts show you which ones landed and which didn't. Fix whatever the failed row says, then repost to just that account — the successful ones stay put and won't be duplicated.

An account says its sign-in expired

Platforms expire their access sooner or later, usually after a password change or a permissions change on their side. xpost checks every connected account on a schedule rather than waiting for a post to fail, so you normally see this before it costs you a post: a red dot on Accounts in the sidebar and a red panel on the account's row explaining what broke.

The fix is to reconnect that account on Accounts — same button you connected it with. Just above the account list is a line saying when the connections were last checked, with a Check now beside it if you want to confirm straight away instead of waiting for the next automatic check.

Where a platform tells us in advance, you get the warning early: when an account's access has a known end date, we try to renew it quietly, and if we can't we email you about three days out — once, not every day — so you can reconnect before anything scheduled misses. Those emails are the An account needs reconnecting switch in Notifications.

Still stuck? Ask a person.

Email support@xpost.to. If it's about a post that went wrong, the fastest thing you can send is the link to it from Receipts — that page already has the platform's own error text on it.

Building on the API or wiring up an agent? The developer docs go deeper than these pages do.