# Emoji Gen > Turn any image or text into animated Slack emoji. Free online emoji maker: upload a picture or type a word like APPROVED and get 40+ animated emoji styles — shake, spin, party, pet, mind-blown and more — as GIF, WebP or APNG, sized for Slack and Discord and kept under Slack's 128 KB limit. Site: https://emoji-gen.com/ ## Key facts - Input: PNG, JPG, GIF (up to 60 frames) or WebP, up to 5 MB, by upload, URL or clipboard paste — or text: up to 40 characters on up to 3 lines, in one of 4 fonts (bold, rounded, serif, mono) with text and badge colours. - Output: animated GIF, WebP or APNG at 32, 64, 100, 112, 128 px; single-frame results are PNG. - Slack: 128×128 px default; each result reports whether it is under Slack's 128 KB limit and can be shrunk to fit. - Settings: speed, direction, size, colour mode (party, rainbow, deep-fried, x-ray, grayscale, strobe), crop fit/fill. - Privacy: uploads and renders are deleted after 24 hours; no accounts; usage statistics are anonymous (no IP addresses, cookies or personal data stored). - Free to use; no account or sign-up needed. ## Text emoji Type a short text instead of uploading an image — for Slack reactions such as APPROVED, SKIP, AGREED or LGTM. - Up to 40 characters on up to 3 lines; words wrap automatically onto the layout that makes the text largest, and an explicit line break forces a split. - Fonts: bold, rounded, serif, mono (Bold, Rounded, Serif, Mono). Default: bold. - Colours: text colour (default #ffffff, white) and badge background (default #2eb67d, Slack green) as #rgb/#rrggbb; background "none" gives plain text on a transparent background. - The text becomes an ordinary source image, so every style, colour mode and the Slack optimizer apply; the "none" style is a static badge, "shake" a shaking one. - API: POST /api/images with JSON {"text": "APPROVED"} (optional "font", "color", "background"), then render with GET /api/render//