Telegram custom emoji 100x100: make it from a 1024x1024 image
Telegram custom emoji are exactly 100x100, PNG or WEBP. 100x100 is far below GPT Image 2.5's size floor, so request 1024x1024 on Sume and scale it down.

Telegram custom emoji must be exactly 100x100 pixels, as PNG or WEBP. You cannot request 100x100 from GPT Image 2.5 on Sume (10,000 pixels is under the 655,360 minimum), so request 1024x1024 with a transparent background and scale it down in your own tool.
Telegram's rules are from its stickers page; Sume's from the Image API docs. Both read 2026-10-01.
What does Telegram say about custom emoji?
The stickers page lists custom emoji at exactly 100x100, in PNG or WEBP. It also says that adding and using custom emoji sets is a Premium-only feature, so check your audience before you build a set.
What should the source image be?
At 100 pixels, detail disappears. Ask for one bold subject, thick shapes and a transparent background, then check the result at actual size before you upload it.
curl -X POST https://api.sume.com/v1/images \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-image-2.5",
"prompt": "Single bold cartoon avocado emoji, thick outline, flat colors, centered, no background",
"image_size": "1024x1024",
"background": "transparent",
"output_format": "png"
}'Why 1024x1024?
It is a multiple of 16 on both edges, 1,048,576 pixels (inside 655,360 to 8,294,400), and square, so the rules in Sume's docs and OpenAI's guide are met (our arithmetic). Scaling to 100x100 happens on your side; Sume's docs do not describe a resize step for GPT models.
| Item | Value |
|---|---|
| Telegram custom emoji size | Exactly 100x100, PNG or WEBP |
| 100x100 pixel count | 10,000 |
| GPT Image 2.5 pixel range | 655,360 to 8,294,400 |
| Requested size | 1024x1024 (1,048,576 pixels) |
Can I get several variants?
Send several requests with different prompts, or set n (1 to 10) where the model allows it. Read the model's supported_parameters first; unsupported parameters return 400 unsupported_parameter.
Sources
Related posts
More in Use cases
- Threads podcast guest card: pull the guest still with video frames
Threads now supports guest card posts for podcasts. To get the guest image from your episode video, ask Sume video frames for stills at the seconds you name.
- Threads podcast video highlight: cut the clip with video trim
Threads now lets podcasters share highlights as video posts. Cut one standout moment from a long episode into a new MP4 with Sume video trim at $0.02 per job.
- Threads podcast transcript post: burn the quote onto the clip
For a podcast quote clip, burn captions from your exact transcript text with Sume video captions script_text, or authored cues. SRT uploads are not accepted.
- TikTok Ad Network asset specs: banner 640x100 and where Sume stops
TikTok Ad Network wants video at 1280x720, 720x1280 or 720x720 and banners at 600x500, 640x200 or 640x100. What Sume renders natively and what needs a crop.
Written by Sume