For one ordinary post, start with X's web composer. For a thread, choose a tool that explicitly supports X threads, not just scheduled posts. For your own application, the X API creates posts when you call it; your application supplies the clock and the queue.
Checked on October 26, 2026. X facts below come from its own help pages and API documentation, linked under Sources. X Help blocked direct retrieval, so its help-page claims were checked against indexed official text, not a signed-in composer. API and scheduler documentation was read directly. Plan access and controls can change; uncertainties are named below rather than filled in from third-party tutorials. No real post was scheduled or sent for this guide.
Which route should you use?
| Route | Access | Best fit | Check before committing |
|---|---|---|---|
| X's ordinary web composer | An X account; the help text checked does not establish its current free-versus-paid eligibility | One post without another publishing tool | Whether your composer offers the calendar, and whether your post type keeps it available |
| X Pro, formerly TweetDeck | X's current indexed Premium help places X Pro under Premium+ only | A column-based desk, including scheduled image or video posts | Do not assume Basic or the middle Premium tier includes X Pro |
| A scheduling tool | That tool's account and plan; its restrictions can differ from X's | Threads, a queue, multiple networks or team review | Explicit X-thread, poll and media support, not a generic scheduling claim |
| Your own X API integration | A developer app, user authorization and API credits | A publishing feature in software you operate | Durable scheduling, upload expiry, partial threads and uncertain results |
Do you need X Premium to schedule a post? Do not confuse X Pro's paid access with the ordinary web calendar. The X Help text available for this check does not establish a current tier requirement for the ordinary composer, so we cannot promise universal free-account access. Check for the calendar in your own web composer before buying a plan. For X Pro, the Premium tier list currently places access under Premium+; older tutorials saying simply “Premium” may be out of date. Recheck that page before paying.
Schedule one post on X's website
Use the website, not instructions written for the iOS or Android app. This is a web-composer checklist, not a claim that every account or post type was tested:
- Open the post composer on X's website and write the post. Check the account, text and any attachments.
- If the calendar control is available, open it and choose the date and time. Read the displayed time zone rather than assuming it is your intended audience's zone.
- Confirm the time, then complete the composer's Schedule action. A draft or a date selected without the final scheduling action is not a scheduled post.
- Open the composer's scheduled-post list and confirm the saved content and time. If you edit it, check the saved schedule again.
If the calendar is absent, do not assume a subscription upgrade fixes it. Check the post type first. X's Premium how-to explicitly says longer posts cannot yet be scheduled. A paid account's ability to write a longer post is not permission to schedule one.
X's Media Studio help acknowledges that scheduled posts can be modified on X.com, but Media Studio is a separate workflow. Likewise, X Ads scheduling instructions are for the Ads dashboard, not proof of what the ordinary composer supports. This guide does not establish a current maximum advance window for the ordinary composer.
Schedule in X Pro
X's advanced X Pro guide explicitly documents this workflow:
- Compose the post in X Pro. If needed, use Add images or video to attach the file.
- Choose Schedule post, then select the date and time.
- Finish the scheduling action and inspect it in a Scheduled column. Use that column to review or edit it.
That is evidence for scheduled image and video posts. It is not evidence for every media combination, longer posts, polls or a whole thread. X Pro access also does not grant API credits or make your own API integration a scheduler; those are separate products and workflows.
What changes for threads, polls and media?
Threads need a reply chain
A thread is not several independent posts set for the same minute. Part 2 must reply to part 1's actual post ID; part 3 replies to part 2, and so on. X's thread guide explains creating a thread, but the official help text checked here does not confirm scheduling a complete thread in either the ordinary web composer or X Pro. Do not assume the “add another post” button makes the whole chain schedulable.
Use a scheduler that explicitly offers X threads, and review the entire chain as one item. If you only need help writing one, the free X thread maker splits and previews the text without an account. It does not schedule or publish anything.
Poll creation is not poll scheduling
X's poll help documents creating polls and says photos cannot be included in one. The checked native scheduling help does not confirm scheduled polls. A poll button in a composer, or a tool's ability to schedule text, is not proof that it schedules polls. Verify the exact route before planning a timed vote.
The X API does expose a poll object on post creation. A tool can build on that, but it must actually implement it:
Buffer, for example, explicitly says it does not create X polls.
Media limits belong to the route you use
X Pro explicitly documents scheduled images and video. Third-party tools can have smaller file or duration allowances than X's own website, and paid longer-video privileges do not automatically carry across to them. Check the tool's current media rules, wait for the upload to finish, and review the crop, ordering and alt text before scheduling.
For an API integration, do not upload to X weeks ahead and assume the media ID will survive until publication. The
upload response gives expires_after_secs; upload close enough to the posting time, finish video processing, then
attach the returned ID. Keeping an original file in your scheduler is different from keeping an unexpired X upload.
Scheduling tools: two available options and one waitlist
Buffer: a documented thread scheduler, but no X polls
Buffer's X guide explicitly supports threads of up to 25 parts on its current Free, Essentials and Team plans. Free allows one scheduled thread at a time per queue. Its guide says to create the thread on the web; check its current mobile documentation separately rather than assuming the same controls are in every app.
Its scheduling guide describes New Post, selecting the X channel, composing, and Set Date and Time, followed by Schedule Post. For a thread, its X guide uses Start Thread to add parts. Inspect the saved queue and the channel's time zone afterwards.
Buffer supports photos, GIFs and video, but its X guide explicitly says no X polls and limits videos to 140 seconds and 512 MB. Do not buy X Premium expecting that to extend Buffer's video allowance.
Typefully: scheduled X publishing and an API
Typefully offers X scheduling and an API with a future
publish_at time. Its plan_at field is different: it plans a date without enabling automatic publication. Review
the current plan and format support before moving a queue; this guide does not certify its poll support or every media
combination. The Typefully comparison covers its agent permissions and where it
may fit better than Flaghand.
Flaghand: agent drafts, owner approval; sign-up is closed
Flaghand is an option for people whose own AI agent writes the posts. Its API, CLI and MCP let an agent draft, upload, check and request approval. No agent token can approve, schedule or post. The owner approves the exact account, content and proposed time in Flaghand with a passkey; changing posting content or the time needs a fresh approval.
It supports X threads as one draft, with 2 to 25 parts, and a poll on the opening part only. Polls cannot share that part with media. Its upload allowance is 50 MB per file, not X's full long-video allowance. The drafts and media documentation gives the current rules.
After publication, Flaghand reads X posts back and reports limited comparisons, not a guarantee of identical pixels, media-file bytes or link destinations. The safety guide explains that boundary.
Public sign-up is not open. Join the Flaghand waitlist. There is no account-setup walkthrough here that a new reader cannot complete. The account-dependent scheduling recipe remains unpublished until access opens.
Schedule through the X API
The create-post endpoint is POST /2/tweets. Its documented request body
has no future publication-time field. Your application stores the content and intended time, then calls X when due.
An app-only bearer token cannot publish: use user-context authorization for the account that posts.
For a reliable implementation:
- Store the intended instant with an explicit UTC offset and display its local time zone for review. Decide how a recurring wall-clock time behaves at daylight-saving changes.
- Keep scheduling state durably; a sleeping browser tab or a process that loses its queue on restart is not enough.
- Upload media near the due time, add alt text and wait for successful processing before attaching it.
- For a thread, save each returned ID before sending the next reply. The API has no single atomic thread transaction: a failure can leave an opening segment live.
- After an uncertain response, reconcile before retrying. Blindly sending the same opening post again can duplicate it.
- Record success and the live links, or a clear failure that needs attention. A saved draft or accepted queue entry is not evidence of publication.
X's API is pay per use, separately from a scheduling tool's plan. Each thread part is a post-creation request; polls, uploads, metadata and read-back have their own endpoint behavior. See X API pricing and the threads, polls and media API guide before estimating costs or implementing the requests. Buying a consumer subscription is not a substitute for setting up developer access and billing.
Before you leave a post in the queue
Check the posting account, exact content, thread order, poll choices, attachments, alt text and displayed time zone. Inspect the saved schedule, not just the draft. After the due time, check the result and open the live link; for a thread, confirm the replies are actually connected. A scheduler can attempt the right thing and still meet an expired login, a media-processing failure or a platform refusal.
Sources
Checked on October 26, 2026. X Help references below were checked through indexed official text because direct requests were blocked; native account eligibility and UI behavior were not independently exercised. X API, Buffer, Typefully and Flaghand documentation was read directly. No real posting call, account change or purchase was made.
- X Help: Premium tiers, Premium how-to and longer-post scheduling, advanced X Pro features, Media Studio, threads, polls
- X API: create a post, media uploads, pricing
- Buffer: X formats, threads and restrictions, scheduling a post
- Typefully: publishing platform, API
- Flaghand: drafts and media, agents