Skip to content

Instagram PNG images: why posting needs JPEG

By PostPen Team ·

A post published through Instagram's API, which is how every scheduler posts, has to use JPEG images. That catches out anyone who schedules: the same PNG that works on LinkedIn, X and Threads is refused for Instagram. PostPen's Composer handles it for you by making a JPEG copy for Instagram only.

Start free and connect Instagram. Your agent writes, PostPen schedules and publishes.

What Meta's docs say

Meta's Content Publishing page for the Instagram Platform (Meta for Developers, checked November 3, 2026) says: "JPEG is the only image format supported. Extended JPEG formats such as MPO and JPS are not supported."

So a PNG, WebP or GIF can't go to Instagram as it is through any scheduler. It has to become a JPEG first.

What the Composer does

When you add a PNG, WebP or GIF to a post in PostPen's Composer and Instagram is one of its networks, the Composer makes a JPEG copy of that image for Instagram:

  • Only Instagram gets the copy. LinkedIn, X, Facebook and Threads get your original file, at its own quality and format.
  • Transparent parts turn white. JPEG has no transparency, so a logo on a transparent background sits on white in Instagram's copy.
  • An animated GIF keeps its first frame. Instagram's copy is a still image. The networks that take GIFs get the animation.
  • The quality stays high. The copy is saved at high JPEG quality, so what you see is mostly Instagram's own compression.
  • Alt text carries over. Describe the image once, and Instagram's copy keeps the description.

The Composer checks Instagram with the copy it will get, so the post isn't held back for being a PNG.

What your agent should send

The JPEG copy is made in the Composer, in your browser. When your agent saves a post, it should attach JPEG images for Instagram. If it attaches a PNG, WebP or GIF to a post that goes to Instagram, save_draft returns the reason in network_problems: Instagram only takes JPEG images. schedule_post waits until the post is fixed, so nothing fails at posting time.

Two ways to handle it:

  • Ask your agent for JPEG files when Instagram is one of the networks.
  • Open the draft in the Composer and add the image there, which makes the copy for you.

Instagram's other limits

WhatLimit through PostPen
MediaNeeds an image or a video. Up to 10 JPEG images, or one video
Image sizeUp to 5MB each
Caption2,200 characters, at most 30 hashtags
AccountAn Instagram professional account

See the Instagram scheduler for everything PostPen does on Instagram.

Ask your agent for an Instagram post

Post these three product shots to Instagram and LinkedIn on Friday at 11 AM. Use JPEG files for Instagram.

Your agent finds both accounts with list_destinations, saves the draft with the images and a caption for each network, and schedules it. If anything can't go to Instagram, it gets the reason before the post is scheduled.

FAQ

Not as a PNG. Meta's content publishing docs say JPEG is the only image format supported, so a PNG has to become a JPEG first.

Schedule your first Instagram post

Connect Instagram, add PostPen to your agent, and send the same images everywhere without a format mix-up.

Start free and connect your agent. Your agent writes, PostPen schedules and publishes.