How to post to Instagram from ChatGPT
https://postwire.io/api/mcp) you connect your Instagram Business or Creator account once, hand over the photo or video through an upload link, approve the caption, and ChatGPT publishes a photo, a Reel or a carousel of up to 10 items, or schedules it. PostWire is not in ChatGPT's app directory yet (submitted to OpenAI's review on Sept 27, 2026), so today you add it as a custom connector in developer mode; in Claude it is already in the connector directory. The free plan includes Instagram and the connector: 1 business, 20 posts a month, 5 AI drafts a day, 2 networks per post, no card.What you hand over decides the format: one photo is a feed post, one video is a Reel, two to ten items are a carousel. A file you attach to a ChatGPT message does not reach a connector, so the photo or video travels through an upload link.
Updated . Written from PostWire's own code; vendor prices read on Oct 12, 2026. Live networks: TikTok, Instagram, YouTube, LinkedIn (personal profiles), Facebook Pages, Bluesky, Mastodon, Telegram, Discord, and X on paid plans.
Set it up and post, step by step
- Add PostWire as a custom connector
If your ChatGPT plan offers developer mode, add a connector with the URL
https://postwire.io/api/mcpand sign in when asked (OAuth). Menu names in ChatGPT change often; OpenAI's help page has the current path. Not available on your plan? Use PostWire in Claude, where it is in the connector directory. - Sign in with your email
A 6-digit code creates your free PostWire account inside the sign-in window — no password and no card. Prefer to set it up by hand first? Open the dashboard.
- Connect Instagram
Ask "connect my Instagram". The connector calls
create_connect_linkand returns a one-hour link; open it and choose Log in with Instagram (no Facebook Page needed) or connect through a Facebook Page you manage. Instagram's API publishes only from Business or Creator accounts — switching a personal account is free, in the Instagram app's settings. PostWire never sees your password. - Hand over the photo or video
Ask "give me an upload link".
create_upload_linkreturns a page where you pick the file on the phone or laptop that has it (up to 100 MB on the free plan and 1 GB on paid plans); say "uploaded" and the assistant reads it withget_uploaded_file. A public https link to the file works too. For a carousel, hand over each photo or clip — up to 10. - Approve the caption
"Write an Instagram caption for this: we open the new terrace on Saturday."
generate_postsreturns a draft and publishes nothing: a hook in the first line, a short caption and at most 5 hashtags at the end, within Instagram's 2,200 characters. Ask for the LinkedIn or Facebook version in the same message and each comes back written for that network. - Publish, or schedule it
Say "post it" and the assistant calls
post_to_social; "schedule it for Friday at 9" callsschedule_post, and "in my next free slot" uses your queue. Two or more items inmediamake a carousel:{ "name": "post_to_social", "arguments": { "platforms": ["instagram"], "per_platform": { "instagram": { "text": "The terrace opens Saturday ☀️ …" } }, "media": [ { "url": "https://postwire.io/m/…/terrace-1.jpg", "type": "image" }, { "url": "https://postwire.io/m/…/terrace-2.png", "type": "image" }, { "url": "https://postwire.io/m/…/walkthrough.mp4", "type": "video" } ] } } - Check that it is live
Instagram processes a video before it can be published. If that takes longer than the call can wait, the result says
processingand PostWire publishes it by itself a few minutes later; ask "is it live?" and the assistant callsget_post_status.
Nothing is published before you say yes: the assistant shows the exact caption first. PNG, WebP and AVIF images are converted to JPEG for you, because Instagram's API takes JPEG only — an image ChatGPT generated can go out as it is once it is uploaded.
Ways to post to Instagram from ChatGPT, compared
Read on each vendor's page on Oct 12, 2026.
| Option | Free plan | Writes each network's caption from one idea |
|---|---|---|
| PostWire | 20 posts a month, 1 business, no card | Yes — generate_posts |
| Upload-Post | 10 uploads a month, 2 profiles | Not listed on its page |
| Copy the caption, post in the Instagram app | — | You paste it by hand |
Checked on Oct 12, 2026 (2026-10-12) on each vendor's own pricing or docs page, linked in the first column and below. Monthly billing in USD unless noted. "Not listed" means we could not find it on their page, not that it is missing.
Where PostWire is ahead
- 20 posts a month on the free plan, with the connector and the API. Upload-Post's free plan has 10 uploads a month.
- The caption is written for Instagram — hook in the first line, at most 5 hashtags — and each other network's version with it, from one sentence.
- A carousel of up to 10 photos and videos in one request, with PNG and WebP images converted to JPEG for you.
- A photo or video from any device: the upload link opens on the phone or laptop that has the file.
- You approve before anything goes out, and a video Instagram is slow to process is published by itself when it is ready.
- Upload-Post — Post to Social Media with ChatGPT ("Reviewed and listed by OpenAI"; networks): www.upload-post.com/chatgpt-social-media/
- Upload-Post plans (llms-full.txt: Free 2 profiles, 10 uploads a month; Basic $24 a month): www.upload-post.com/llms-full.txt
What to say in ChatGPT, and what Instagram receives
| You say | The connector calls | Instagram receives |
|---|---|---|
| "Post this photo with a caption about the new menu" | generate_posts, then post_to_social | A feed post with one photo |
| "Post this video as a Reel" | post_to_social with the video | A Reel, with the audio that is in your file |
| "Make a carousel with these four photos" | post_to_social with four items in media | A carousel (2 to 10 photos or videos) |
| "Schedule it for Friday at 9" | schedule_post with run_at | The same post, at that time |
| "What do I have scheduled?" | list_scheduled_posts | Nothing — it reads your queue |
| "Send the same news to LinkedIn and Facebook" | generate_posts, then post_to_social with three networks | Its own caption; the other two get theirs |
Source: PostWire's MCP server and Instagram publisher, read Oct 12, 2026. Every Instagram tool and limit: Instagram MCP server.
Why ChatGPT needs a connector to post to Instagram
Instagram publishes for other software only through Meta's official API, and only for an app Meta has reviewed, on a Business or Creator account whose owner has signed in and approved it. A chat window holds none of that. A connector does: PostWire's Meta app was approved in App Review on July 14, 2026, so you create no Meta developer app, and you sign in on Meta's own screen.
The same connector publishes to TikTok — post to TikTok from ChatGPT — and to YouTube, LinkedIn, Facebook Pages, Bluesky, Mastodon, Telegram and Discord, each with its own text.
What it does not do
PostWire publishes and schedules your own posts. It does not like, follow, comment or send direct messages, and it does not post to a personal Instagram account, because Instagram's API does not. Instagram has no text-only posts, so every post needs a photo or a video. Stories are published through PostWire's REST API, not from the chat.
Questions people ask
Can ChatGPT post to Instagram?
Not by itself. ChatGPT writes the caption, and a connector with an approved Meta app publishes it. With PostWire's connector (https://postwire.io/api/mcp) ChatGPT posts photos, Reels and carousels to your Instagram Business or Creator account after you approve each one.
Is there a ChatGPT app that publishes to Instagram?
Yes, through connectors. PostWire's connector publishes photos, Reels and carousels and schedules them. It is not in ChatGPT's app directory yet (submitted to OpenAI's review on Sept 27, 2026), so today you add it as a custom connector in developer mode; it is already listed in Claude's connector directory.
Why doesn't the photo I attached in ChatGPT reach Instagram?
Files attached to a chat message are not passed to connectors. Ask for an upload link, open it on the device that has the file, then tell the assistant it is uploaded.
Can ChatGPT schedule Instagram posts?
Yes. Say when — "Friday at 9" or "my next free slot" — and the connector queues the post with schedule_post. "What do I have scheduled?" lists the queue, and a queued post can be cancelled from the chat.
Can ChatGPT post Reels and carousels?
Yes. One video is published as a Reel and two to ten photos or videos as a carousel. Stories are published through PostWire's REST API rather than from the chat.
Do I need a Business account or a Facebook Page?
No developer app: you connect to PostWire's approved Meta app. No Facebook Page either if you choose Log in with Instagram; the account must be a Business or Creator account.
How much does it cost?
The free plan includes Instagram and the connector: 1 business, 20 posts a month, 5 AI drafts a day, 2 networks per post, no card. Starter is $9 a month for 3 businesses and Pro $29 for 10, with every network in each post; nothing is charged from the chat — an upgrade link opens a Stripe page.
Try it on one business, free.
The free plan is 1 business, 20 posts a month, 5 AI drafts a day (about 20 a month) and 2 networks per post — every network connects free, no card, no time limit. Paid plans start at $9 a month and have a 14-day refund; Pro can be tried free for 7 days, with a card at checkout and nothing charged that day.