Skip to main content
SocialCutter

SEO and reference

Checklist before publishing an image on social media

A pre-publish checklist: exact size per destination, ratio, weight, format and text still readable after the centered crop. Copy it and tick it off.

  • social media image checklist
  • check image before publishing
  • exact size per destination
  • image file weight
  • text readable after crop
  • mobile review

What this list is and how to use it

This is the review you run before publishing, not after. It is meant to be printed or copied: six blocks of checkboxes, a sizes table and an errors table. You do not need to know anything about the product that generates the images to use it, although the end explains how to get every size at once if you work from one master.

The underlying rule: one master image, one exact size per destination. A destination is a platform and format pair (instagram + post, youtube + thumbnail, tiktok + cover). If that pair is not fixed before designing, the review is useless because there is no size to check against.

Sizes, ratios, formats and target weight

DestinationRatioExact sizeRecommended formatTarget weight
instagram post1:11080x1080JPG or WebPunder 200 KB
instagram story9:161080x1920JPG or WebPunder 300 KB
instagram landscape1.91:11080x566JPG or WebPunder 200 KB
facebook post1.91:11200x630JPG or WebPunder 200 KB
facebook story9:161080x1920JPG or WebPunder 300 KB
facebook cover2.63:1820x312JPG or WebPunder 150 KB
twitter post16:91200x675JPG or WebPunder 200 KB
twitter header3:11500x500JPG or WebPunder 300 KB
linkedin post1.91:11200x627JPG or WebPunder 200 KB
linkedin cover5.9:11128x191JPG or WebPunder 150 KB
youtube thumbnail16:91280x720JPGunder 500 KB
youtube banner16:92560x1440JPGunder 1 MB
tiktok cover9:161080x1920JPG or WebPunder 300 KB

The pixels and ratios are the exact dimensions of the output file in the catalogue (6 platforms, 13 destinations) and you can query them yourself at GET https://api.socialcutter.theboomer.dev/api/v1/platforms. The target weight column is our recommendation for loading speed, not a network limit: every platform sets its own upload limits and changes them over time, so check the network’s official help center before automating.

The default output format is WebP at quality 85 out of 100. PNG for fine text, logos and transparency; JPG or WebP for photos. The detail is in PNG, JPG or WebP: which format to use on each network, and the full table with every destination is in Social media image sizes: dimensions and ratios.

Block 1 — The master image

  • The master is the uncropped original.
  • The main subject sits near the center (the crop is centered; nothing decides which part matters).
  • There is a margin around text and logos.
  • If you request the YouTube banner, the master is at least 2560 px wide.
  • The master is under 5 MB (the upload limit) and is a raster image (JPG, PNG or WebP).
  • The master is archived separately: outputs are generated from it, never the other way round.

Block 2 — The exact size and ratio

  • Every piece has the exact size from the table, not a close one.
  • Every piece has the destination ratio (1:1, 9:16, 16:9, 1.91:1, 2.63:1, 3:1 or 5.9:1).
  • You did not request a 4:5: there is no 4:5 destination in the catalogue; portrait is 9:16.
  • You did not upscale a small output to a bigger size (a 1080x1080 blown up to the 2560x1440 banner loses detail).
  • The file name states platform, format and date.

Block 3 — The text survives the centered crop

  • All the text fits inside the frame and is readable without zooming.
  • No text, button or logo touches the edge: with cover the crop trims evenly on both sides and whatever sat at the edge is lost.
  • In stories and portrait covers (9:16), text stays away from the top and bottom: the network interface covers those areas.
  • If you do not want any cropping, you considered contain with background_color instead of cover (the output keeps the destination size anyway).
  • You compared every output with the master, one by one.

Block 4 — Weight and format

  • Every output is within the target weight from the table.
  • Pieces with transparency come out as PNG; photos as JPG or WebP.
  • You did not drop quality below 80 on a photo (visible artefacts).
  • If a file is too heavy, you generated again with quality 80-85 before touching the design.
  • You know which upload formats the network you publish to accepts.

Block 5 — The mobile check

  • You opened the piece on a real phone, not only on a monitor.
  • The text reads at normal brightness with no zoom.
  • The subject is not cut off or off-centre in the network preview.
  • The YouTube thumbnail is still recognisable at a small size (it is displayed far smaller than 1280x720).
  • The piece loads fast on mobile data.
  • You checked the piece in the network’s own preview, not just in your gallery.

Block 6 — Before you hit publish

  • The destination size is still current in the network’s help center (they change).
  • Every asset has alt text and a description.
  • The usage rights for the image are clear.
  • There is one version per destination for every network in the campaign, generated from the same request.
  • You know generation does not publish: it returns file URLs and publishing is up to you or your tool.
  • The outputs and the master sit in a folder dated to the campaign.

How to generate every destination at once

If you publish on several networks, do not repeat the work image by image. Prepare one master and request every destination in a single call.

From the web

  1. Open the dashboard at https://dash.socialcutter.theboomer.dev.
  2. Upload the master (5 MB maximum) or paste its public URL.
  3. Tick the campaign destinations.
  4. Pick cover to trim the excess with a centered crop, or contain to fit the whole image.
  5. Download one image per destination from the history.

With a single API request

curl -s -X POST "https://api.socialcutter.theboomer.dev/api/v1/images/process" \
  -H "X-API-Key: sc_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "source": { "type": "url", "value": "https://your-cdn.com/master.jpg" },
    "destinations": [
      { "platform": "instagram", "format": "post" },
      { "platform": "instagram", "format": "story" },
      { "platform": "facebook", "format": "post" },
      { "platform": "twitter", "format": "post" },
      { "platform": "linkedin", "format": "post" },
      { "platform": "youtube", "format": "thumbnail" },
      { "platform": "tiktok", "format": "cover" }
    ],
    "options": { "fit_mode": "cover", "format": "jpg", "quality": 85 }
  }' > sc.json

jq -r '.outputs[] | "\(.platform)/\(.format) \(.width)x\(.height) \(.size_bytes) bytes \(.url)"' sc.json

Every output carries url, width, height and size_bytes: that fills in the boxes in block 2 and block 4 without opening each file. For a local master, upload the binary with POST /api/v1/images/process/upload (multipart, file field). For a whole campaign, POST /api/v1/images/batch.

Two scope notes: format and quality are request options, not destination ones; if you need PNG for one output and JPG for another, that is two requests. And the cover crop is centered and deterministic: the image content is not analysed.

From an LLM or an agent (MCP)

With the MCP server connected you write no HTTP: ask “generate every destination of this campaign from this master” and the model calls the tool with those destinations. The MCP exposes 28 tools over the same API.

Cost

  • 1 use per destination (platform and format) per request; duplicate destinations in the same request are not charged twice.
  • The full 13-destination checklist costs 13 uses; a campaign across 4 networks with 4 destinations costs 4 uses.
  • Failed processing jobs are refunded.
  • Reviewing costs nothing: if a box fails you fix the master and generate again; only the generation counts.

Typical errors

SymptomCauseWhat to do
The piece does not fit the networkIt was published at a size that was merely closeUse the table size; the catalogue gives the exact output dimensions
Text cut off at the edgecover trims from the center and the edge is lostLeave a margin in the master or use contain
Text unreadable on mobileDesign made for a monitorCheck on a phone before scheduling
Blurry image on large screensA small output upscaled to a bigger sizeStart from a master at least as wide as the biggest destination
File too heavyHigh quality or PNG on a photoDrop quality to 80-85 or switch to JPG/WebP
413 error on uploadThe master is over 5 MBShrink the master or serve a lighter version over a URL
You expect the image to appear publishedThe API only generates files and returns URLsPublish through the network API, your CMS or your automation tool
The network rejects the uploadThe format is not one it acceptsCheck its help center and generate JPG or PNG

Next steps

Frequently asked questions

How much should a social media image weigh?

There is no single weight: it depends on the destination. The table in this checklist gives a rough target per format (between 150 KB and 1 MB), but those are our loading targets, not network limits. Before automating, check the real limit in each platform's help center.

What exactly do I check on mobile?

Three things: that the text is readable without zooming, that the subject is not cut off at the edges after the centered crop, and that the file loads quickly on mobile data. Open the piece on a phone before scheduling it, not after.

How do I verify the crop did not cut anything important?

Compare every output with the master. The crop is centered: whatever sits at the edge is lost. If text or a logo touches the edge, redesign the master with a margin and generate again. Each destination only costs 1 use.

Can I generate all 13 sizes in one go?

Yes. A request to /api/v1/images/process takes the full destination list and returns one URL per output. It costs 1 use per destination, so 13 uses for all 13, and duplicate destinations in the same request are not charged twice.

Does the checklist work for a store or a blog too?

Yes. Sizes and weights are the same; what changes is where you publish. For a store or a CMS, add the box for uploading the asset with its alt text and a readable file name.