PostWharf, the publishing tool we make, checks the length and attachments of a LinkedIn post when you queue it, and emails every owner of the workspace when LinkedIn ends a sign-in.
Why the failure only shows at the scheduled time
LinkedIn's Posts API accepts a new post in one state only: published. A scheduling tool therefore keeps your post on its own side and hands it to LinkedIn when the slot arrives. Every check LinkedIn makes on that post, on the sign-in, the Page role, the permission and the file, happens at that moment and not on the day you scheduled it. That is how a post queued without complaint on Monday fails on Friday.
The side of the problem that is the same on every network, including posts that are accepted and removed afterwards, is in our guide to silent failures in scheduled posts. This page stays with what is particular to LinkedIn.
How this list was put together
A cause is on the list only where LinkedIn's developer documentation states the rule behind it. We read twelve pages of that documentation on Microsoft Learn on 10 November 2026, covering sign-in, permissions, Page roles, media, rate limits, API versions and errors. Each is linked where it is used and listed under Sources. Two figures come from our side, the 3,000-character text limit and the rule that a post carries images or a video but not both: they are the limits we enforce for LinkedIn before a post is queued.
Three causes that other guides list are left out, because none of those twelve pages documents them: a password change ending the sign-in, a refusal for repeating earlier text, and spam filtering. A wrong time zone or a post left as a draft is a setting inside the scheduling tool, and it works the same on every network. The list is about posts sent by a scheduling tool or by your own code. LinkedIn's built-in scheduler is not described in the developer documentation, so it is outside it.
The nine causes at a glance
The quickest route is the reason your tool recorded against the failed post. Where it says only "failed", the pattern in the third column narrows it down.
| # | Cause | The pattern to look for | Fix | Send the same post again? |
|---|---|---|---|---|
| 1 | The sign-in passed its 60 days | Every post to that account fails from one day on, and the tool asks you to reconnect | Reconnect the account | Yes, after reconnecting |
| 2 | The sign-in was cancelled early | The same, with no 60-day rhythm to it | Reconnect, then find what cancelled it | Yes, after reconnecting |
| 3 | The person who connected the Page lost their role | Page posts fail while that person's profile posts still go out | Restore the role, or reconnect through someone who holds one | Yes, once the role is back |
| 4 | The tool may post to a profile but not to a Page | Page posts from this tool have never gone out | Ask the tool whether LinkedIn has approved it for Pages | No |
| 5 | The file is outside LinkedIn's limits | Text posts go out and this file does not | Export the file again inside the limits | No, change the file |
| 6 | The post is a shape LinkedIn does not take | Refused the moment it is sent, every time | Change the post | No, change the post |
| 7 | LinkedIn throttled the tool or the account | Failures that stop once midnight UTC has passed | Wait for midnight UTC | Yes, after the reset |
| 8 | The tool calls a retired version of the API | Every LinkedIn post from the tool fails on the same day | The tool's maker has to update it | Yes, after the update |
| 9 | LinkedIn had a fault of its own | A few failures that clear without any change | Check the feed, then send again | Yes, after checking the feed |
1. The sign-in passed its 60 days
LinkedIn issues every access token with a 60-day life, and its authorisation guide says it does not generate long-lived ones. What happens when the 60 days run out depends on which of two arrangements the tool has.
- Without refresh tokens. The tool has to take you back through LinkedIn's authorisation step before the token expires. LinkedIn skips the consent screen if you are still logged in to linkedin.com and the current token is still valid. Once it has expired, you are asked to approve the app again from the start.
- With refresh tokens. LinkedIn offers refresh tokens to approved Marketing Developer Platform partners. The tool can then renew the 60-day token without you, but only for 365 days counted from the day you connected, and a renewal does not restart that count. LinkedIn's own example is a tool that renews on day 360: both tokens then have five days left, after which the member has to authorise the app again.
Fix: reconnect the account in your scheduling tool, then send the posts that missed. An account that asks to be reconnected about every two months is on the first arrangement. A reconnect once a year is the longest gap LinkedIn's rules allow.
2. The sign-in was cancelled before its end date
LinkedIn documents three events that end a sign-in early.
- Someone removed the app. LinkedIn's error guide describes a token revoked by the member from the privacy settings on LinkedIn's website, and says the member has to authenticate again before the app can carry on.
- The tool changed the permissions it asks for. When an app requests a different set of permissions from the one you granted, LinkedIn invalidates every token issued under the old set.
- LinkedIn revoked it. LinkedIn reserves the right to revoke access tokens and refresh tokens at any time for technical or policy reasons, and expects the tool to send you back to the login screen when it does.
Fix: reconnect, then look for the trigger. The second one reaches every customer of the tool on the same day. The first can be as small as a colleague clearing out apps they did not recognise.
3. The person who connected the Page lost their role
A company Page has no sign-in of its own. A person signs in, and LinkedIn lets the tool post to the Page only while that person holds one of the roles its Posts API page lists for posting: administrator, content admin or direct sponsored content poster. Analyst and curator, two of the other Page roles LinkedIn defines, are not on that list.
Files are checked as well. For a video, a document or an image owned by a Page, LinkedIn's upload pages name two roles, administrator and direct sponsored content poster. Administrator is the one role named on every page, which makes it the safe role to connect with.
So when the colleague, agency or contractor who clicked Connect leaves the Page, or is moved to a role that cannot post, every scheduled Page post is refused for missing permissions, while posts to that person's own profile carry on. LinkedIn also records a state for each role (approved, requested, rejected or revoked), so check that the role reads as approved and not as requested.
Fix: ask a current Page admin to restore the role, or reconnect the Page through someone who holds one and is staying. Keep a note of who connected each account and when, so the next departure is not a surprise.
4. The tool may post to a profile but not to a Page
LinkedIn splits posting into two permissions. One lets an app post on behalf of a member, which covers a personal profile. The other lets it post on behalf of an organisation, which covers a company Page and is the permission tied to the roles in cause 3. A tool can hold the first without the second.
Which permissions a tool can ask for depends on the LinkedIn products its app has been approved for. The member permission comes with Share on LinkedIn, a product a developer adds from LinkedIn's developer portal. Page posting needs a partner application with a review attached, as our guide to posting access to each social API sets out.
You can tell this cause from the last one by its history: Page posts from this tool have never gone out, for anyone on your team, while profile posts do. What LinkedIn returns to the tool is an access-denied error whose description names both things to check, the permission and the Page role.
Fix: this one is not yours to fix. Ask the tool's support whether LinkedIn has approved it to post to Pages. If it has and Page posts still fail, go back to cause 3.
5. The video, document or image is outside LinkedIn's limits
Each kind of file has its own page in LinkedIn's documentation and its own limits.
| File | What LinkedIn accepts |
|---|---|
| Video | MP4 only, three seconds to 30 minutes long, between 75 KB and 500 MB |
| Document | PDF, PPT, PPTX, DOC or DOCX, up to 100 MB and 300 pages |
| Image | JPG, PNG or GIF, fewer than 36,152,320 pixels, and a GIF of up to 250 frames |
| Several images | Between 2 and 20 images in one post |
Two notes on that table. The video page gives a second ceiling, 5 GB, in the description of its upload field, and a file under 500 MB is inside both. The pixel limit is easy to miss, because it is about 6,000 by 6,000: an image of 8,000 by 6,000 is over it whatever its file size.
A file can also fail after LinkedIn has taken it. Uploaded media is processed before it can be shown, and LinkedIn lists a file that is too large or in an unsupported format among the reasons processing fails. A post waiting on that file is published only once processing succeeds. If it does not, the post is marked as failed and needs an edit before it can be tried again, which is how a post can look accepted at the slot and still never appear.
Fix: export the file again inside the limits and schedule the post again. Sending the same file a second time fails the same way.
6. The post is a shape LinkedIn does not take
Some posts are refused for what they are, not for the file inside them.
- A carousel sent as a carousel. In LinkedIn's API a carousel is an advertising format. The Posts API lists it for sponsored posts only and says organic carousels are not supported. Slides in an ordinary post go out as a multi-image post or as a document. How other networks treat the same set of slides is in our guide to carousel posting on five networks.
- One image sent as a multi-image post, or more than 20. A multi-image post holds between 2 and 20 images.
- Images and a video together. A LinkedIn post carries one kind of attachment. The rule we enforce is up to 20 images or 1 video, never both.
- Text over the limit. LinkedIn refuses a post whose text is longer than its maximum. The limit we enforce for LinkedIn is 3,000 characters.
These refusals come back the moment the tool sends the post, and they repeat exactly on every retry.
Fix: change the post. Split the slides, drop the extra attachment or cut the text, then schedule it again.
7. LinkedIn throttled the tool or the account for the day
LinkedIn counts API requests over a day and resets its rate limits at midnight UTC. It keeps two counts. One is for the application, meaning every request the tool makes for all of its customers. The other is for each member whose sign-in the tool is using. A request over either count is refused until the reset.
LinkedIn does not publish its standard limits. A developer looks them up per endpoint in the developer portal. It does publish one table, for apps on its Share on LinkedIn product: 150 requests a day per member and 100,000 a day per application (that page was last updated in December 2023). A post with a file costs more than one request, because the upload is registered and the file sent before the post itself is created. A busy day of image or video posts therefore uses the member allowance faster than the number of posts suggests.
LinkedIn emails the tool's developers when the application passes 75% of its quota. It sends no such alert for the member count, and none to you.
Fix: wait for midnight UTC and send the post again. This is one of the two causes where waiting is the whole fix: the same post, unchanged, will go through. If it keeps happening, spread LinkedIn posts across the day. If the application count is the one being reached, only the tool's maker can ask LinkedIn for more.
8. The tool is calling a retired version of LinkedIn's API
LinkedIn releases new versions of its marketing API on a monthly cycle and supports each one for at least a year. Every request to that API has to name the version it was written for, and the newest is not applied by default. A request that names a retired version gets an error back instead of a post. On 10 November 2026 the documentation carried a notice that the November 2025 version would be switched off on 16 November 2026.
This cause has a recognisable outline. On one day every LinkedIn post from the tool fails, for every customer, while its other networks carry on. Reconnecting changes nothing.
Fix: check the tool's status page and tell its support. Once the tool has been updated, the posts that failed can be sent again as they are.
9. LinkedIn had a fault of its own
LinkedIn's error guide sets its own failures apart from the tool's: an internal server error, a service that is temporarily unavailable, and a timeout when LinkedIn takes too long to process a request. It says its services may occasionally be interrupted, and that tools should be built with retries to cover it. The rate-limit page adds that LinkedIn sometimes refuses requests to protect its infrastructure, and that service then returns to normal without anyone doing anything.
Fix: these are the failures a tool should retry for you. If yours did not, look at the profile or the Page before you send the post again. A request that timed out can still have published, and sending it again unseen is how a duplicate gets posted. When a second attempt is safe is set out in our publishing retry rules.
What PostWharf does when a LinkedIn post cannot go out
LinkedIn is one of the networks PostWharf publishes to today. This is what it does when a post cannot go out.
- Length and attachments are checked when the post is created. A LinkedIn post over 3,000 characters, with more than 20 images, more than one video, or images and a video together is refused there, with a sentence naming the limit. Those parts of cause 6 never wait for the slot.
- A dead sign-in is flagged, not retried. When LinkedIn says the sign-in has ended, the channel is marked for reconnection and every owner of the workspace gets one email naming the account and the post that missed it. The emails can be switched off in Settings.
- Only failures in transit are sent again. They are retried with backoff, a longer wait before each new attempt. A refusal is not, because it would be refused again.
- Each network has its own line on the delivery receipt. A post that reached your other networks but not LinkedIn is marked partial, and the LinkedIn line gives the reason as a sentence.
The same record is on the LinkedIn scheduling API: one delivery per channel, with its status, the live URL once published and the error text if it failed.
Sources consulted: LinkedIn developer documentation (learn.microsoft.com), all twelve pages read on 10 November 2026: · Authorization code flow · Refresh tokens with OAuth 2.0 · Posts API · Organization access control by role · Share on LinkedIn · Videos API · Documents API · Images API · MultiImage API · Rate limiting · Marketing API versioning · Error handling · LinkedIn changes these terms and releases new API versions on a monthly cycle. Check the pages again before you rely on a figure.
Common questions
How often does a LinkedIn account need reconnecting in a scheduling tool?
At least once every 365 days, and as often as every 60 days. A LinkedIn access token lasts 60 days. A tool that LinkedIn has given refresh tokens can renew it without you for 365 days from the day you connected. A tool without them needs you back before each 60 days is up.
Which Page roles can post to a LinkedIn company Page through a scheduling tool?
LinkedIn's Posts API page lists administrator, content admin and direct sponsored content poster. LinkedIn ties the permission to post for an organisation to the person who connected the Page holding one of them. Analyst and curator roles cannot post through a tool.
PostWharf is priced per workspace rather than per connected channel, and every plan carries unlimited channels. See per-brand pricing.