Slack Image Sizes — Workspace Icon, Emoji & Profile Photo
Slack has four image specs worth memorising: a 512x512 workspace icon, a profile photo between 512x512 and 1024x1024, a square custom emoji under 128KB, and shared images that Slack re-renders down to a 360px inline preview. Everything below comes from Slack’s own help centre and API reference.
Slack Image Sizes at a Glance
| Asset | Dimensions | Ratio | Formats | Max File Size |
|---|---|---|---|---|
| Workspace icon | 512 x 512 | 1:1 | GIF, PNG, JPG, JPEG, HEIC, HEIF | Not published |
| Profile photo | 512 x 512 – 1024 x 1024 | 1:1 | JPEG, PNG, GIF | Not published |
| Custom emojiSquare | 128 x 128 * | 1:1 | JPG, PNG, GIF | 128KB |
| Shared image (inline preview) | 360 longest side | Any | Any image type | 1GB |
| Shared image (expanded) | 1024 longest side | Any | Any image type | 1GB |
| Link preview (og:image) | 1200 x 630 | 1.91:1 | PNG, JPG | — |
* Slack’s published emoji requirements are square, under 128KB, and JPG, PNG, or GIF — it does not document a pixel ceiling. 128x128 is the practical target: Slack downsizes larger uploads, and the admin.emoji.add API rejects oversized images with error_bad_wide.
Download a Blank Template
Start on a correctly-sized canvas instead of guessing in your editor. Each downloads as a PNG at the exact Slack dimensions.
Drop an image here or click to browse
Social Media Image Size Cheat Sheet (2024)
| Platform | Type | Dimensions |
|---|---|---|
| Post (Square) | 1080 x 1080 | |
| Post (Portrait) | 1080 x 1350 | |
| Post (Landscape) | 1080 x 566 | |
| Story / Reel | 1080 x 1920 | |
| Profile Photo | 320 x 320 | |
| TikTok | Video Cover | 1080 x 1920 |
| Profile Photo | 200 x 200 | |
| YouTube | Thumbnail | 1280 x 720 |
| Shorts | 1080 x 1920 | |
| Channel Banner | 2560 x 1440 | |
| Profile Photo | 800 x 800 | |
| Post (Landscape) | 1200 x 630 | |
| Post (Square) | 1200 x 1200 | |
| Cover Photo | 820 x 312 | |
| Profile Photo | 170 x 170 | |
| Event Cover | 1200 x 628 | |
| X (Twitter) | Profile Photo | 400 x 400 |
| Header Photo | 1500 x 500 | |
| In-Stream Photo | 1600 x 900 | |
| Card Image | 1200 x 628 | |
| Post Image | 1200 x 627 | |
| Cover Photo | 1584 x 396 | |
| Profile Photo | 400 x 400 | |
| Company Logo | 300 x 300 | |
| Standard Pin | 1000 x 1500 | |
| Idea Pin | 1080 x 1920 | |
| Board Cover | 600 x 600 | |
| Profile Photo | 165 x 165 | |
| Twitch | Profile Banner | 1200 x 480 |
| Offline / Video Player Banner | 1920 x 1080 | |
| Profile Photo | 256 x 256 | |
| Info Panel | 320 x 100 | |
| Emote (Large) | 112 x 112 | |
| Emote (Medium) | 56 x 56 | |
| Emote (Small) | 28 x 28 | |
| Snapchat | Snap | 1080 x 1920 |
| Geofilter | 1080 x 2340 | |
| Profile Photo | 320 x 320 | |
| Story Ad | 1080 x 1920 | |
| Threads | Profile Photo | 320 x 320 |
| Feed Image | 1080 x 1350 | |
| Feed Square | 1080 x 1080 | |
| Link Preview | 1200 x 628 | |
| Discord | Server Icon | 512 x 512 |
| Profile Avatar | 128 x 128 | |
| Profile Banner | 600 x 240 | |
| Server Banner | 960 x 540 | |
| Invite Splash | 1920 x 1080 | |
| Custom Emoji | 128 x 128 | |
| Sticker | 320 x 320 | |
| Role Icon | 64 x 64 | |
| Post Image | 1200 x 675 | |
| Community Banner | 1920 x 384 | |
| Avatar / Community Icon | 256 x 256 | |
| Old Reddit Thumbnail | 70 x 70 | |
| Status (Story) | 1080 x 1920 | |
| Business Catalog | 1024 x 1024 | |
| Profile Photo | 500 x 500 | |
| Group Icon | 500 x 500 | |
| Telegram | Channel Post Photo | 1280 x 1280 |
| Story | 1080 x 1920 | |
| Sticker | 512 x 512 | |
| Profile Picture | 512 x 512 | |
| Channel / Group Icon | 512 x 512 | |
| Spotify | Canvas (Looping Video) | 1080 x 1920 |
| Cover Art | 3000 x 3000 | |
| Show / Podcast Artwork | 3000 x 3000 | |
| Profile Image (Artist) | 750 x 750 | |
| Playlist Cover | 640 x 640 | |
| Substack | Newsletter Header | 1456 x 816 |
| Post / Section Hero | 1456 x 816 | |
| Publication Logo | 256 x 256 | |
| Profile Photo | 256 x 256 | |
| beehiiv | Post Thumbnail | 1200 x 630 |
| Publication Logo | 800 x 800 | |
| Profile Picture | 800 x 800 | |
| Inline Image (Landscape) | 1200 x 675 | |
| Inline Image (Square) | 1200 x 1200 | |
| Subscriber Profile Picture | 100 x 100 | |
| Medium | Story Cover | 1500 x 750 |
| Topic / Tag Header | 1500 x 750 | |
| Publication Logo (Horizontal) | 600 x 60 | |
| Publication Logo (Square) | 500 x 500 | |
| Profile Photo | 500 x 500 | |
| Bluesky | Profile Avatar | 1000 x 1000 |
| Profile Banner | 3000 x 1000 | |
| Post Image (Portrait) | 1200 x 1500 | |
| Post Image (Landscape) | 1200 x 675 | |
| Link Card Preview | 1200 x 630 | |
| Mastodon | Profile Picture | 400 x 400 |
| Header Image | 1500 x 500 | |
| Post Image (Landscape) | 1280 x 720 | |
| Post Image (Square) | 1200 x 1200 | |
| Post Image (Portrait) | 1200 x 1500 | |
| Link Preview Card | 1200 x 630 | |
| Etsy | Listing Photo (Square) | 2000 x 2000 |
| Listing Photo (4:3) | 2700 x 2025 | |
| Search Thumbnail | 570 x 456 | |
| Shop Banner (Big) | 1200 x 300 | |
| Shop Banner (Large) | 3360 x 840 | |
| Shop Icon | 500 x 500 | |
| Amazon | Main Image (Recommended) | 2000 x 2000 |
| Main Image (Zoom Minimum) | 1000 x 1000 | |
| Secondary / Lifestyle Image | 1600 x 1600 | |
| Video Thumbnail | 1280 x 720 | |
| Swatch Image | 30 x 30 | |
| Shopify | Product Image (Recommended) | 2048 x 2048 |
| Product Image (Maximum) | 5000 x 5000 | |
| Slideshow / Hero Banner | 1280 x 720 | |
| Blog Post Image | 1200 x 800 | |
| Logo (Wordmark) | 400 x 100 | |
| Favicon | 32 x 32 | |
| Canva | Presentation (16:9) | 1920 x 1080 |
| Instagram Post (Square) | 1080 x 1080 | |
| Instagram Story | 1080 x 1920 | |
| Facebook Cover | 851 x 315 | |
| YouTube Thumbnail | 1280 x 720 | |
| Pinterest Pin | 1000 x 1500 | |
| Logo | 500 x 500 | |
| Wix | Hero / Banner | 1920 x 1080 |
| Section Background | 1920 x 1080 | |
| Blog Post Thumbnail | 880 x 586 | |
| Gallery Image | 1000 x 1000 | |
| Product Image (Wix Stores) | 3000 x 3000 | |
| Logo | 250 x 100 | |
| Favicon | 96 x 96 | |
| WordPress | Featured Image / og:image | 1200 x 630 |
| Thumbnail (cropped) | 150 x 150 | |
| Medium | 300 x 300 | |
| Large | 1024 x 1024 | |
| 2x Large | 2048 x 2048 | |
| Max Upload Before Scaling | 2560 x 2560 | |
| Squarespace | Banner / Section Background | 2500 x 1406 |
| Full-Bleed Background | 2500 x 1667 | |
| Blog Featured Image | 1500 x 1000 | |
| Gallery Image | 1500 x 1500 | |
| Product Image | 2000 x 2000 | |
| Logo | 1200 x 400 | |
| Favicon | 300 x 300 | |
| Google Slides | Widescreen Slide (16:9) | 1920 x 1080 |
| Standard Slide (4:3) | 1024 x 768 | |
| Slide at 100% (16:9) | 960 x 540 | |
| Slide at 100% (4:3) | 960 x 720 | |
| Slack | Workspace Icon | 512 x 512 |
| Profile Photo | 512 x 512 | |
| Profile Photo (Max) | 1024 x 1024 | |
| Custom Emoji | 128 x 128 | |
| Shared Image (Full Preview) | 1024 x 1024 | |
| Link Preview (og:image) | 1200 x 630 | |
| Google Business Profile | Logo | 720 x 720 |
| Cover Photo | 1920 x 1080 | |
| Post Photo | 720 x 720 | |
| Product Photo | 720 x 720 | |
| Photo (Minimum) | 250 x 250 | |
| Tumblr | Photo Post (Recommended) | 540 x 810 |
| Photo Post (Max) | 2048 x 3072 | |
| GIF (Recommended Width) | 540 x 540 | |
| Header Image | 2048 x 1152 | |
| Avatar | 128 x 128 | |
| Email Header | Substack Email Banner | 1100 x 220 |
| Header @2x (600px Email) | 1200 x 240 | |
| Mailchimp Header @2x (New Builder) | 1320 x 264 | |
| Email Body Width (1x) | 600 x 120 | |
| Facebook Ads | Feed Single Image | 1440 x 1800 |
| Carousel Card | 1080 x 1080 | |
| Stories & Reels | 1440 x 2560 | |
| Link Ad (Legacy 1.91:1) | 1200 x 628 | |
| Google Display Ads | Inline Rectangle | 300 x 250 |
| Large Rectangle | 336 x 280 | |
| Leaderboard | 728 x 90 | |
| Half-Page | 300 x 600 | |
| Wide Skyscraper | 160 x 600 | |
| Billboard | 970 x 250 | |
| Large Mobile Banner | 320 x 100 | |
| Responsive Landscape | 1200 x 628 | |
| Responsive Square | 600 x 600 | |
| LinkedIn Ads | Single Image Ad (1.91:1) | 1200 x 628 |
| Single Image Ad (Square) | 1200 x 1200 | |
| Single Image Ad (Vertical) | 720 x 900 | |
| Carousel Card | 1080 x 1080 | |
| Spotlight Ad Background | 300 x 250 | |
| Spotlight Ad Logo | 100 x 100 | |
| Message Ad Banner | 300 x 250 | |
| Video Thumbnail (16:9) | 1200 x 675 |
Workspace Icon
The workspace icon is the tile in the sidebar rail that people click to switch workspaces. Slack accepts GIF, PNG, JPG, JPEG, HEIC, and HEIF, and walks you through a crop step on upload — so a non-square source will not be rejected, it will just be cropped for you.
- Upload 512x512: Slack does not publish a minimum, but 512x512 is the same square it asks for on profile photos and it leaves headroom for the retina rail tile.
- Crop it yourself first: Slack’s in-app cropper works, but cropping in your editor is the only way to control what gets cut. Upload an already-square file.
- Ship the mark, not the logo: the rail tile renders at roughly the size of a favicon. A wordmark with a tagline is illegible there; an icon-only lockup is not.
- Corners get rounded: Slack draws the icon as a rounded square. Keep anything load-bearing away from the corners.
- PNG for flat marks, JPG for photos: the same rule as everywhere else. A transparent PNG composites cleanly against both the light and dark sidebar.
Custom Emoji
Slack is unusually terse about emoji specs. The help centre says only that square images under 128KB and with transparent backgrounds work best, that images can be JPG, PNG, or GIF, and that GIFs can include up to 50 frames. There is no published pixel maximum — but there is an enforced one.
- 128x128 is the target: big enough that Slack never has to upscale, small enough that a PNG stays well under the 128KB ceiling.
- 128KB is the real constraint: it bites on animated GIFs long before it bites on static PNGs. A 50-frame GIF at 128x128 will blow the budget unless you cut frames or reduce the palette.
- 50 frames, hard stop: Slack documents the limit explicitly. Trim the loop rather than dropping the frame rate to nothing.
- Transparency, always: emoji sit inline in messages and inside reaction pills, on white and on dark. A baked-in white background looks like a sticker on both.
- Oversized uploads are resized, not rejected: Slack downsizes them for you. The API surfaces the underlying limit as error_bad_wide and resized_but_still_too_large — so a 2000px source that compresses badly can still fail.
- Design for 22 pixels: the emoji renders inline at roughly text height. Fine detail, thin outlines, and any lettering disappear. One shape, one silhouette, high contrast.
Profile Photo
This is the one spec Slack states as an exact range: your profile picture should be a minimum of 512x512 pixels, but no larger than 1024x1024 pixels. Both ends are real. Undershoot and it looks soft on a retina screen; overshoot and the API returns too_large — the uploaded image had excessive dimensions.
- 512x512 minimum, 1024x1024 maximum: anywhere in that square range is fine. 1024x1024 is the safest choice if you want the crispest render on high-DPI displays.
- Square, or Slack crops it: the photo is displayed as a rounded square next to every message you post.
- JPEG, PNG, or GIF: anything else fails with bad_image.
- Animated GIFs have a frame limit too: the API rejects them with too_many_frames. A still photo is the safe path.
- Crop tight: the avatar renders at around 36 pixels in the message list. Head and shoulders, not a full-body shot.
Shared Images & File Previews
You can upload a file up to 1GB to Slack — but the image everyone actually sees is much smaller. Slack generates a fixed ladder of thumbnails for every uploaded image and renders the 360px one inline in the message. That is why your 2560px desktop screenshot arrives unreadable.
Slack’s Thumbnail Ladder, to Scale
Slack stores each uploaded image at these widths. The thumb_360 version — longest side no bigger than 360 pixels — is what renders in the message body; clicking through serves a larger one. The 80px thumbnail is the only size guaranteed to be exactly square.
- Crop, don’t shrink: a full-screen 2560px screenshot squeezed into 360px turns 12px UI text into mush. Crop to the region you are actually talking about and it survives the downscale.
- 1024px on the longest side is enough: that is the largest thumbnail Slack generates. Uploading a 4000px original buys nothing but upload time.
- 1GB per file: the ceiling applies to anything you add to a channel or DM, not just images.
- Animated GIFs get animated thumbnails: Slack renders thumb_360_gif and thumb_480_gif so the loop plays inline rather than freezing on a still.
- Link previews come from Open Graph: when someone pastes your URL, Slack unfurls it using your page’s og:image. A 1200x630 card — the same 1.91:1 master you already ship for LinkedIn and X — covers Slack too.
Frequently Asked Questions
What size is a Slack workspace icon?
Upload a square image at 512x512 pixels. Slack accepts GIF, PNG, JPG, JPEG, HEIC, and HEIF files and offers a crop step during upload, but it does not publish a minimum dimension or file-size limit for the workspace icon. Because the icon renders as a small rounded square in the sidebar rail, use an icon-only version of your logo rather than a full wordmark.
What size should a Slack custom emoji be?
Slack requires custom emoji to be square, under 128KB, and in JPG, PNG, or GIF format, with animated GIFs limited to 50 frames. It does not publish a pixel maximum, but 128x128 is the practical target — Slack resizes anything larger, and the admin.emoji.add API rejects oversized images with error_bad_wide. Use a transparent background so the emoji reads in both light and dark themes.
What size is a Slack profile photo?
Slack states that your profile picture should be a minimum of 512x512 pixels and no larger than 1024x1024 pixels. It must be square and in JPEG, PNG, or GIF format. Exceeding 1024x1024 returns a too_large error, and animated GIFs with too many frames are rejected with too_many_frames.
Why do images look blurry or shrunken in Slack messages?
Slack generates a fixed ladder of thumbnails for every uploaded image — 64, 80, 360, 480, 720, 960, and 1024 pixels — and renders the 360px version inline in the message. A 2560px screenshot is downscaled to a 360px preview, which destroys small UI text. Crop to the region that matters before uploading instead of relying on the reader to click through.
What is the maximum file size for a Slack upload?
You can add files up to 1GB in size to Slack, in channels or direct messages. Custom emoji are the strict exception: they must stay under 128KB. Slack does not publish a file-size ceiling for workspace icons or profile photos, but both are constrained by dimensions instead.
Can Slack custom emoji be animated?
Yes. Animated GIFs are supported and can include up to 50 frames, but they share the same 128KB limit as static emoji. That limit is what usually bites: a 50-frame GIF at 128x128 will exceed 128KB unless you cut frames or reduce the colour palette.
Are Slack image sizes the same as Discord or Telegram?
The icons overlap; the emoji do not. Slack, Discord, and Telegram all use a 512x512 square for workspace, server, and channel icons, so one master file covers all three. Emoji diverge: a Slack custom emoji is a square under 128KB, a Discord custom emoji is 128x128 under 256KB, and a Telegram sticker is 512x512 with one dimension exactly 512. Slack is also the only one of the three that caps profile photos at 1024x1024.