Skip to main content
pendpost schedules a post by storing its scheduledAt time and then publishing it at that time. How that publish actually happens, and whether it needs pendpost running, depends on the platform. pendpost is explicit about the difference rather than implying every platform behaves the same.

Two delivery modes

Every targeted platform on a post falls into one of two modes.
  • Native scheduling. YouTube (publishAt) accepts a future publish time directly. Mastodon (scheduled_at), WordPress (status future + date_gmt, fired by wp-cron), and Ghost (status scheduled + published_at) work the same way. pendpost hands the post to the platform ahead of time, and the platform fires it on schedule. This survives your computer being off, because the platform, not pendpost, does the publishing.
  • Publish when due. pendpost publishes Instagram, Facebook, LinkedIn, X, Telegram, Discord, and Nostr itself the moment they are due, which means pendpost has to be running at the scheduled time (or the optional 24/7 cloud service has to cover them).
The dashboard shows which mode applies. A post handed off natively reads as scheduled on the platform; a post pendpost still owes reads as scheduled in pendpost. On a mixed post (for example Mastodon plus X in one post) the post detail shows a per-platform delivery hint so you can see, lane by lane, what fires when your computer is off and what does not.

Every platform at a glance

Reddit, TikTok, and Google Business Profile are local only on every plan: their platform terms keep an unaudited app’s posting on your own machine, so the paid cloud never fires them for you. Everything in the publish-when-due rows can run around the clock if you host pendpost on an always-on machine, covered next.

The scheduler

When pendpost is running with the scheduler on, it walks your approved, due posts on a short recurring tick and publishes the lanes that are due. The gate still holds: only an approved post publishes. Nothing publishes until it’s approved; by default that’s you, and auto-approve is owner-only and revocable. A post with no approval never publishes, no matter how its time passes. YouTube, Mastodon, WordPress, and Ghost are handed off ahead of their due time. Instagram, Facebook, LinkedIn, X, Telegram, Discord, and Nostr are published when they come due, so the scheduler has to be running then.

Publishing when your computer is off

If you schedule Instagram, Facebook, LinkedIn, X, Telegram, Discord, or Nostr and want them to publish even when your computer is off, run pendpost on a host that never sleeps. See always-on self-host for the secure pattern: keep the server loopback-only behind a private tunnel, or set the optional auth token when you bind it to a public host. YouTube, Mastodon, WordPress, and Ghost already fire on time without it, because they schedule natively.