Better Likes 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 by calling Facebook's own GraphQL endpoint. Better
Likes is a different shape entirely — a community-driven emoji reaction layer,
everywhere on the web.
TL;DR
AllReacts is honest about how it works: it forges Facebook's own GraphQL
story-reaction request, complete with headers like
x-fb-lsd and x-asbd-id, so a custom emoji you pick is
delivered as if Facebook supported it natively. That's clever — and also
extremely fragile, because Facebook changes those parameters often. The
project's own v2.0.1 release notes specifically call out fixing 429 rate-limit
errors caused by Facebook tweaking its API.
Better Likes doesn't ride on top of Facebook's reaction API. It runs an
independent community counter so that you can leave a reaction where the
platform offers none — like under a GitHub repo or an Amazon product — and so
that the count of, say, 🔥 under a Facebook post means "X verified Better Likes
users reacted with 🔥", not "Facebook says X people did".
At a glance
| Better Likes | AllReacts for Facebook Stories |
| Primary job | Community reaction counts under public content | Inject custom emoji into a Facebook Story via Facebook's own GraphQL |
| Sites covered | Facebook, GitHub, Amazon — and growing | Facebook Stories only |
| Reactions stored where? | On the Better Likes server, open-source worker | On Facebook, as a real Story reaction visible to the recipient |
| Depends on the target platform's private API? | No — we observe DOM only; selectors are hot-patchable |
Yes — relies on Facebook's GraphQL story-reaction call and matching
headers. Per v2.0.1, those headers had to be changed to stop 429 errors.
|
| Login model | One-time email verification → 30-day session | Uses your existing Facebook login session |
| License | GPL-3 | MIT |
| Public reach | Brand-new | ~22 Chrome users, ~12 Firefox users (store cards) |
Where Better Likes is the better choice
1. You want reactions on more than just 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, Better Likes's surface is much
wider.
2. You want reactions that don't break the next time Facebook ships
Forging GraphQL calls is a smart hack, but it's an implementation built on
private internals. The AllReacts changelog already shows what that costs: when
Facebook flipped headers, users started seeing instant 429 rate-limit errors
until x-fb-lsd
and x-asbd-id were added back. That's normal — but it's the kind of
fragility Better Likes is specifically designed to avoid.
Better Likes 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 Facebook tweaks markup, we patch a selector entry on our
server and every user picks it up on next page load. No reinstall, no 429s.
3. 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. Better Likes is the opposite:
every reaction contributes to a public count visible to other Better Likes
users. For that count to mean something we tie each vote to a verified email,
so it isn't just a sum over anonymous installs.
4. They aren't replacements for each other — use both if you want both
AllReacts is the right tool if your friend's Story deserves a 🦖 reaction and
Facebook only offers six emoji. It does that job well within the constraints
of Facebook's API. Better Likes is the right tool if you want reactions on the
rest of your browsing day. They don't fight; they just don't overlap.
Which one should you pick?
Pick AllReacts if your single use case is sending non-default emoji
as native Facebook Story reactions, and you're comfortable updating when Facebook
shifts its API.
Pick Better Likes if you want a maintained, cross-site reaction layer
with verified accounts behind the counts.
Sources
-
AllReacts source —
github.com/DuckCIT/AllReacts-for-Facebook-Stories. The GraphQL approach, the
x-fb-lsd / x-asbd-id header fix, and the 429 issue come
directly from the v2.0.1 release notes in the public README.
-
Store cards — Chrome Web Store (listing) and Firefox Add-ons (listing).
-
We're not affiliated. AllReacts is a thoughtful little project we respect; it
just solves a narrow problem that's adjacent to ours, not the same one.