What's supported
DemandBird publishes to Substack Notes: the short-form social feed on Substack, not the full newsletter. This requires a personal Substack account.
| Feature | Limit |
|---|---|
| Account type | Personal Substack account (Notes) |
| Characters | 10,000 |
| Images | Up to 6 per post |
| Video | Up to 5 minutes |
How the connection works
Substack has no public API that allows third-party tools to post on your behalf. DemandBird works around this by using your active browser session.
- You log into Substack in ChromeMake sure you're signed in to your Substack account in Chrome before connecting.
- The extension captures your session cookieThe DemandBird Chrome extension reads your Substack session cookie (the same token your browser uses to keep you logged in). This is what authorizes posts to be published on your behalf.
- The cookie is encrypted and storedYour session cookie is encrypted and stored securely. It is never sent anywhere except back to Substack when a post is being published.
- At publish time, the extension does the postingWhen a scheduled Substack post is due, DemandBird sends it to your Chrome extension, which publishes it to Substack using your session, just as if you had typed and submitted it yourself.
What's required at publish time
Because the Chrome extension does the actual publishing (not DemandBird's servers), three things must be true at your scheduled time:
- Chrome extension is installed
The DemandBird extension must be installed in Chrome and not disabled.
- Chrome is open and running
The extension only runs when Chrome is open. A closed browser means the extension is inactive.
- Your computer is awake
A sleeping or shut-down computer cannot run Chrome or the extension. Schedule Substack posts for times you know your computer will be on.
When posts fail
DemandBird waits up to 3 hours past the scheduled time for the extension to pick up the post and publish it. This grace period covers brief delays like Chrome starting up or the extension reconnecting.
Posts stuck in posting status past the 3-hour grace period are automatically failed when the extension next connects.
If the extension never responds within that window (because your computer was asleep, Chrome was closed, or the extension wasn't running), the post automatically moves to Failed.
Failure reasons you may see
| Error message | What it means |
|---|---|
| Missed scheduled time: your computer was asleep or the extension wasn't running | The 3-hour window passed without the extension checking in. Make sure Chrome is open and the extension is active at your scheduled time. |
| Your Substack session has expired: please reconnect your account | Your session cookie is no longer valid. Reconnect your account in Settings to get a fresh session. |
Retrying a failed post
Every failed post has a Retry button. Before clicking it:
- Confirm your computer is awake and Chrome is open
- Confirm the DemandBird extension is installed and enabled in Chrome
- If the session expired, reconnect your Substack account first (see below)
Reconnecting after a session expires
Substack session cookies can expire after extended periods of inactivity. When this happens, posts will fail with the session-expired error.
- Log in to Substack in ChromeMake sure you're signed in to your Substack account in Chrome before reconnecting.
- Go to Settings โ Connected AccountsFind your Substack connection and click Disconnect.
- Click Connect and authorizeThe extension will capture a fresh session cookie. Your Substack account is now reconnected and ready to publish.