Terms of service

Last updated: 2026-09-14

Introduction

Emojery is a free service operated by a single maintainer and funded by donations. These terms set out the relationship between you and the operator when you use the extension, the website, or the API. They are deliberately short and plain. Read together with the acceptable use policy and the privacy policy, they form the full agreement.

1. Who you're agreeing with

"The operator", "we", and "us" mean the maintainer of the Emojery project (see github.com/khasky/emojery), identified as the data controller, with contact details, in the privacy policy. "You" means anyone who uses the extension, the API, or this website. "The service" means the Emojery-hosted backend, the extension binary distributed through the Chrome Web Store and AMO, and the content of this website.

2. What's provided

Reading reaction counts is open to everyone without an account. Submitting reactions requires a signed-in Emojery account, created through a sign-in with a provider you already use, as described on the How sign-in works page. Account creation and use are free, there is no advertising, and every feature of the extension is available to every user. A paid public API for aggregate counts is planned; it would be a separate, optional product bought by developers, it does not make any part of the extension paid, and what it sells is the serving of counts that are already public, never data about a person. Nothing tied to an account, and nothing attached to a reaction as context beyond a per-country total above a minimum count, will be sold through it or otherwise. You can keep using the read endpoints anonymously without accepting these terms; the terms attach when you sign in or call a write endpoint.

When you submit reactions, the service stores the active reaction row with timestamps and a count of reaction changes. Unless you turn it off, the reaction also carries context (country and city, language, browser family, and OS) for aggregate maps. That context is controlled by the "Community insights" setting, which is enabled by default and can be turned off in extension settings.

3. Acceptable use

The behavioral rules (one account per person, no automation, no circumvention of anti-abuse measures, no reactions on illegal targets) are set out in the acceptable use policy, which is incorporated into these terms by reference. Violating those rules is a breach of this agreement.

4. Your reactions and the public record

You keep whatever rights you have in what you submit, and the operator claims no ownership of it. A reaction is a small thing — an emoji, a public URL, a moment in time. But it has to be publishable for the service to exist at all, so by submitting one you grant the operator a worldwide, non-exclusive, royalty-free license to: record it and count it into the aggregate for that target; publish the resulting entry in the public transparency log under a rotating pseudonym, timed to the minute, permanently; and publish, distribute, and license the aggregate counts derived from it, including through the planned paid API.

That license is irrevocable in one narrow, structural sense. Deleting your account appends a public revocation that reverses your entry and decrements every counter it fed, but no one can withdraw an entry from an append-only log that third parties already mirror — the property that makes the counts checkable is the same property that makes the record permanent. Everything else ends when the reaction does: remove it and the per-user record goes with it.

Aggregate counts are facts about how many people pressed what, not authored content, and nobody claims copyright in them, the operator included. A paid API would sell the service of serving those numbers, never a right to them: they stay free to read from the public log and free to recompute with the open-source verifier.

A log entry never carries your name, your provider id, your account identifier, or anything that links back to you without a key only the backend holds. What it does carry, and the limits of that, is set out in the privacy policy.

5. Account and termination

You may delete your account at any time from the extension settings; deletion is immediate and irreversible, and removes the per-account reaction records along with the aggregate contributions they made. The pseudonymous entries already published in the transparency log are not removed: they are reversed by public revocation entries appended to the log, which is append-only by design. We may suspend or terminate accounts that violate the acceptable use policy, and we may stop, suspend, or change the service at our discretion. Where doing so is practical and lawful, we will give reasonable notice before a wholesale shutdown.

You are responsible for keeping access to the provider account you sign in with. Anyone who can sign in to that provider account can act as you on Emojery. If you lose access to that provider account, you lose access to that Emojery account; we cannot recover or transfer accounts by any other means, because the account identifier is derived only from the provider account itself.

6. Third-party platforms

Emojery adds reactions on top of websites operated by third parties (Facebook, GitHub, Amazon, and others). We are not affiliated with those operators, we do not control their rules, and we cannot guarantee that they will continue to permit a browser extension to render UI alongside their content. We are not liable for any action a host platform takes against your account on that platform, including warnings, restrictions, suspensions, content removal, or termination, arising from or related to your use of Emojery. Where a host platform's terms of service appear to prohibit browser-extension augmentation, the conflict is between you and that platform; you remain responsible for your own compliance with the rules of every site you use.

7. Intellectual property

The extension source code is licensed under GPL-3.0-or-later; your rights under that license are not affected by these terms. The license covers the code and grants no right to the hosted service: a fork or any other client that wants to reach the Emojery backend rather than one of its own needs access granted separately, and section 3 of the acceptable use policy says how to ask. The website content (text, images, and layout) is © the operator and may be quoted for commentary, criticism, news reporting, teaching, and research under fair-use / fair-dealing principles. The "Emojery" name and logo are marks of the operator; you may refer to the project by name but may not present a fork or derivative as the official Emojery service.

Emojery is not affiliated with, endorsed by, or sponsored by any of the sites it adapts to. Product names, trademarks, and registered trademarks referenced on this site belong to their respective owners.

If you believe something Emojery publishes infringes your copyright, or that reactions are being aggregated against an illegal target, the route to us is set out under Complaints about a target, together with the honest limits of what we can act on: we host no page content, and the public log is append-only.

8. Feedback and suggestions

Ideas you send us (a feature request, a bug report, a note through the extension's Report tab, a comment on an issue) may be used to improve Emojery with no obligation to you: no payment, no attribution requirement, and no confidentiality, since the issue tracker is public in the first place. Ask for credit for an idea and you will usually get it; what this clause rules out is a claim of ownership over a feature once it ships.

It covers suggestions only, never code. Code arrives as a pull request under GPL-3.0-or-later, and its author keeps their copyright in it.

9. No warranty

The service is provided "as is" and "as available", without warranties of any kind, whether express or implied, including but not limited to warranties of merchantability, fitness for a particular purpose, accuracy or completeness of reaction counts, uninterrupted availability, and non-infringement. The sites we adapt to change their layouts without warning; the reaction picker may be temporarily missing, misplaced, or broken, and we make no commitment to a specific recovery time. The GPL warranty disclaimer in the extension's license applies to the extension code; this clause additionally disclaims warranties on the hosted service.

10. Limitation of liability

To the maximum extent permitted by applicable law, the operator is not liable for any indirect, incidental, special, consequential, exemplary, or punitive damages, or for any loss of data, profits, revenue, or goodwill, arising out of or in connection with: (a) your use of, or inability to use, the service; (b) any unauthorized access to or alteration of your data; (c) any interruption, suspension, or cessation of the service; (d) any bugs, viruses, trojan horses, or similar harmful code that may be transmitted to or through the service by any third party; (e) any errors or omissions in counts, content, or selectors; (f) the conduct of any third party using the service; or (g) any action taken by a host platform against your account on that platform. This applies whether based on warranty, contract, tort (including negligence), or any other legal theory, and whether or not the operator has been informed of the possibility of such damage.

For any direct damages the operator's total aggregate liability is capped at the greater of (a) the amount you have paid the operator in the 12 months preceding the claim (which, for a free service, is zero) and (b) EUR 10. Some jurisdictions do not allow the exclusion or limitation of certain damages; in those jurisdictions the operator's liability is limited to the maximum extent permitted, and your mandatory statutory rights are not affected.

11. Indemnity

You agree to defend, indemnify, and hold the operator harmless from any third-party claim, demand, loss, or expense (including reasonable legal fees) arising out of your breach of these terms or of the acceptable use policy, or your misuse of the service.

12. Governing law and jurisdiction

These terms are governed by the federal laws of Canada and the laws of the operator's province of residence applicable therein, without regard to conflict-of-law principles. Disputes that cannot be resolved informally will be brought before the competent courts of that province. Nothing in this clause deprives a consumer of the protection of mandatory rules of the law of their country of habitual residence, including the right to bring proceedings before the local courts of that country where mandatory consumer-protection law so provides.

13. Severability, assignment, and survival

If any clause of these terms is held to be invalid or unenforceable, the remaining clauses remain in full force. The operator may assign these terms in connection with a transfer of the project to a new maintainer; you may not assign your rights under these terms.

Ending your account, or the service ending, does not end the clauses that only matter afterwards. The license granted in section 4 over entries already published, intellectual property, feedback, the warranty disclaimer, the limitation of liability, the indemnity, and governing law all survive; so does this section.

14. Entire agreement

Together with the acceptable use policy and the privacy policy, these terms form the entire agreement between you and the operator regarding the service, and supersede any prior understandings on the same subject.

15. Changes

We may revise these terms as the service evolves. The "Last updated" date above reflects the most recent change. Material changes will be surfaced in the extension settings on next launch; continued use after that point counts as acceptance of the revised terms. If you disagree, delete your account from the popup's Account tab and stop using the service.

16. Contact

For legal notices and formal inquiries, open an issue on GitHub, or use the extension's Report tab. We do not operate a separate legal-inquiries inbox. Every other channel is listed on Contact.