A social account does not stay connected forever. Each network hands a scheduler a credential that lasts a while, can be withdrawn by the person, and is sometimes ended by the network itself. A post that fails with "reconnect this account" is almost always one of five things, and which one depends on the network. This page lists how the connection lasts on each of Preflight's twelve networks, what ends it, and what to do.
How long a connection lasts
| Network | What the scheduler holds | How it is kept alive |
|---|---|---|
| Instagram, Threads | One token that lasts 60 days and has no refresh token | Swapped for a new one while it is still alive, so it has to be renewed before it lapses |
| Facebook Pages | A Meta token from the Facebook login | Ends when the grant changes or Meta ends the session |
| YouTube | An access token that lasts an hour, and a refresh token | Renewed every hour; revoking the app in your Google account ends it |
| TikTok, Pinterest, LinkedIn | An access token and a refresh token | Renewed ahead of expiry with the refresh token |
| Tumblr | An access token that lasts 42 minutes | Renewed when a post needs it; the refresh token changes on every use |
| Bluesky | An app password and a session of about 90 minutes | The session is renewed; the app password stays until you revoke it |
| Mastodon | An access token for your instance | No scheduled renewal; ends when you revoke the app |
| Telegram | A bot token and a chat | Does not expire; ends when the bot is removed from the chat or its token is reset |
| Discord | A webhook URL | Does not expire; ends when the webhook or its channel is deleted |
The five reasons a channel disconnects
- The 60-day token lapsed (Instagram, Threads). With no refresh token, a lapsed token can only be replaced by authorising again. Preflight starts renewing 30 days before the end, once a day, so a bad night at Meta costs a retry, not the channel. A scheduler that waits for the last hours gives itself a handful of chances in two months.
- You changed your password or logged out everywhere (Meta). Meta ends its sessions. This is code 190 with subcode 460 (password changed) or 467 (logged out).
- Meta asked you to confirm it is you. Subcode 459 is a checkpoint: nothing is wrong with the connection, but Meta will not use it until you pass the check in the Facebook or Instagram app.
- You removed the app or lost access to the Page. Subcode 458 means the app was removed from your account; 492 means you no longer have the rights on that Page. Both need a new connection, and 492 also means checking that you are still an admin.
- A second connection replaced the first. Meta keeps one choice of Pages for each person and each app, and a new consent replaces the old one: connecting from a second workspace and ticking fewer Pages can cut the first off. The Facebook Pages guide covers this. Tumblr has the same kind of trap for another reason: its refresh token changes on every use, so two accounts sharing one grant invalidate each other.
Meta's subcode 463 simply means expired; the others above are the useful ones, because the reason written next to a flagged channel tells you which to act on.
What a scheduler should do about it
- Keep the reason. Throwing away Meta's own message hides whether the cause was a password change, a checkpoint or expiry. Preflight stores Meta's words, shows a plain sentence in the email and settings, and records when the platform last accepted the account.
- Distinguish a refusal from a lost channel. A reply with no error code from Meta is transient, not a lost channel, and is tried again.
- Retry a flagged account that may heal. A self-renewing account whose token is still in date is offered again twice a day, so a flag that was wrong clears itself.
- Renew what can be renewed before a post needs it, except where the call budget forbids it. Tumblr's tokens last 42 minutes and its app-wide budget is small, so they are renewed when a post needs one.
What you can do
Reconnect from the channel's row in settings; the rest of the schedule stays. Before a long trip or a big campaign, look at the list of channels and fix any flagged one first, because a post fails only when its time comes. Do not change your Meta password the day before a scheduled week without checking the channels afterwards. For Bluesky, keep the app password in your own notes: it can be revoked in Bluesky's settings without touching your login.
Connections on the free plan
Reconnecting costs nothing and does not touch your posts, on any plan, the free one included. The connection steps for each network are on the integration pages, and the errors a failed post returns over the API are listed on the errors page.
Token lifetimes and renewal rules read from Preflight's code on 30 October 2026; Meta's subcodes are those it documents for error 190.
Questions people ask
- Why does my Instagram account keep asking to reconnect?
- Instagram's login gives one 60-day token with no refresh token. If it is not renewed before it lapses, only authorising again replaces it. Preflight renews it from 30 days out, so a reconnect usually means Meta ended the session: a changed password, a logout everywhere, a security check or a removed app.
- What does Meta error 190 mean?
- Meta no longer accepts the token. The subcode says why: 458 the app was removed, 459 a security checkpoint, 460 the password changed, 463 the token expired, 467 you logged out, 492 you lost access to the Page.
- Do my scheduled posts disappear when a channel disconnects?
- No. They stay in the schedule and fail when their time comes if the channel is still disconnected. Reconnect the channel and they can go out.
- Which networks never need reconnecting?
- Telegram and Discord do not expire: a bot token and a webhook last until you remove them. Mastodon and Bluesky last until you revoke the app or the app password. The other networks renew their tokens automatically.
- Why does connecting a second Facebook workspace cut off the first?
- Meta keeps one choice of Pages per person and app, and a new consent replaces the old choice. Ticking fewer Pages the second time removes the others from the first workspace.