Emojery vs AllReacts for Facebook Stories
AllReacts is a tidy little MIT-licensed tool: it lets you send any emoji as a reaction on a Facebook Story. Emojery is a different shape entirely — a community-driven emoji reaction layer, everywhere on the web.
One narrow job, and a wider one
AllReacts focuses on one job: custom emoji for Facebook Stories. That is useful if Stories are exactly what you need, but it also ties the extension to a narrow platform flow that can change under it.
Emojery doesn't ride on top of a target site's reaction system. It runs an independent community counter so that you can leave a reaction where the platform offers none.
At a glance
| Emojery | AllReacts for Facebook Stories |
| Primary job | Community reaction counts under public content | Add custom emoji to Facebook Stories |
| Sites covered | 14 and growing — Facebook, Instagram, Reddit, GitHub, GitLab, YouTube, X, Threads, Amazon, Rotten Tomatoes, TMDB, IMDb, Metacritic, and OpenCritic | Facebook Stories only |
| Reactions stored where? | On the Emojery server | On Facebook, as a real Story reaction visible to the recipient |
| Depends on the target platform's private API? | No. We observe DOM only; adapters ship with the extension | Yes — depends on a platform-specific Story reaction flow. |
| Login model | One provider sign-in | Uses your existing Facebook login session |
| License | GPL-3 | MIT |
Where the wider surface matters
Reactions on more than Stories
AllReacts is, by design, Stories-only. Posts, comments, reels, messages, GitHub repos, Amazon products — all out of scope. If your goal is to leave an emoji where the platform doesn't offer one, Emojery's surface is much wider.
A layer that survives the next Facebook release
Depending on a target platform's internal reaction flow is a practical tradeoff for a Story-only tool, but it can be fragile when that platform changes. Emojery avoids that model by keeping its own reaction layer separate from the target site's native reaction system.
Emojery never calls a target site's private API. The extension reads the DOM, finds public anchors (a post, a star button, a buy-box), and renders a separate picker. If a supported site tweaks markup, we update the bundled adapter and ship a focused extension release.
The reactions count, and the count means something
AllReacts doesn't aggregate counts at all. Each reaction goes into the recipient's Story inbox, that's where it lives. Emojery is the opposite: every reaction contributes to a public count visible to other Emojery users. For that count to mean something we tie each vote to a provider-backed account, so it isn't just a
sum over anonymous installs.
Stories, or everything else
A Story is private, it expires in a day, and AllReacts sends a real Facebook reaction into it. Nothing in Emojery does that, and nothing here is trying to talk you out of it.
Everywhere the content stays put, though, a reaction can be counted instead of delivered, and that is the layer Emojery adds across every supported site. How it works on Facebook posts and Reels is shown on
Emojery for Facebook.