How to post to Instagram from ChatGPT

ChatGPT cannot post to Instagram by itself: it writes the caption, and a connector — an app built on MCP whose Meta app is approved to publish — does the posting. With PostWire's connector (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

  1. Add PostWire as a custom connector

    If your ChatGPT plan offers developer mode, add a connector with the URL https://postwire.io/api/mcp and 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.

  2. 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.

  3. Connect Instagram

    Ask "connect my Instagram". The connector calls create_connect_link and 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.

  4. Hand over the photo or video

    Ask "give me an upload link". create_upload_link returns 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 with get_uploaded_file. A public https link to the file works too. For a carousel, hand over each photo or clip — up to 10.

  5. Approve the caption

    "Write an Instagram caption for this: we open the new terrace on Saturday." generate_posts returns 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.

  6. Publish, or schedule it

    Say "post it" and the assistant calls post_to_social; "schedule it for Friday at 9" calls schedule_post, and "in my next free slot" uses your queue. Two or more items in media make 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" }
        ]
      }
    }
  7. 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 processing and PostWire publishes it by itself a few minutes later; ask "is it live?" and the assistant calls get_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.

OptionFree planWrites each network's caption from one idea
PostWire20 posts a month, 1 business, no cardYes — generate_posts
Upload-Post10 uploads a month, 2 profilesNot 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.
Sources, all read on Oct 12, 2026:

What to say in ChatGPT, and what Instagram receives

You sayThe connector callsInstagram receives
"Post this photo with a caption about the new menu"generate_posts, then post_to_socialA feed post with one photo
"Post this video as a Reel"post_to_social with the videoA Reel, with the audio that is in your file
"Make a carousel with these four photos"post_to_social with four items in mediaA carousel (2 to 10 photos or videos)
"Schedule it for Friday at 9"schedule_post with run_atThe same post, at that time
"What do I have scheduled?"list_scheduled_postsNothing — it reads your queue
"Send the same news to LinkedIn and Facebook"generate_posts, then post_to_social with three networksIts 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.