Skip to content

Privacy Policy

The short version: there are no visitor accounts, no third-party analytics, no advertising, no trackers, and no raw network addresses in storage. The rest of this page is the detail behind that sentence.

Last updated:

Who is responsible

FontServer operates FontServer and decides how the data described here is handled. For anything in this policy, write to privacy@fontserver.ir.

What we do not do

Stated first, because it is most of the answer:

  • No tracking. No third-party analytics, no advertising pixels, no fingerprinting, no third-party JavaScript of any kind. The site loads code from its own origin and fonts from our own edge nodes. A family's page tells our own servers that it was viewed, with nothing that identifies you — described below.
  • No visitor accounts. There is nothing to sign up for, so there is no profile to build.
  • No raw IP addresses in storage. Where we need to recognise a repeat submitter, we store a keyed one-way hash of the address, never the address itself.
  • No sale or sharing of personal data. Not to advertisers, not to data brokers, not to anyone.
  • No cross-site profile. Sites that embed our fonts send us a request for a stylesheet and a font file. We do not use that to build a picture of the people browsing them.

Cookies and local storage

This site sets no cookies. Three values are kept in your browser's local storage, only after you use the feature they belong to, and they never leave your device:

fontserver.locale
Which language you chose for the interface. Holds fa; absent means English.
fontserver.theme
Whether you chose light or dark; absent means follow your system.
fontserver.collection
The families and styles you added to your collection, so the list is still there next time you visit.

None of them identifies you, none is sent to our servers or read by anyone else, and none is used for analytics — which is why there is no cookie banner. Clearing your browser's site data removes them and costs you nothing.

Server logs

Our services write request logs for operating and debugging the system: the time, a correlation identifier, the path requested, the response status and size, and the user-agent string. The user-agent is genuinely load-bearing here rather than incidental — it is what decides which font format your browser is sent.

Logs are retained for a short operational window and are used only to keep the service running and to investigate abuse. They are not used to build profiles and are not shared.

If you post a review

This is the only place where you can give us personal data. When you do:

Display name
Published with the review. It is whatever you type — use a pseudonym if you prefer; nothing verifies it.
Review text, title and star rating
Published with the review, after a moderator has read it.
Email address (optional)
Stored only as a SHA-256 hash. The address itself is never written to the database. The hash exists so the same person cannot post twenty reviews of one family, and so you can later identify a review as yours. It is never displayed, never published, and cannot be used to email you.
A hash of your network address
A keyed one-way hash, so it cannot be reversed into an address even by someone holding the database. It is used solely to rate-limit submissions.
Your user-agent string
Kept with the review so a moderator can recognise automated spam. Never published.

The legal basis for handling this is our legitimate interest in publishing useful, non-spam reviews, together with your consent in choosing to post one. A review you post is public and may be indexed by search engines and quoted in their results.

Requests from sites that embed our fonts

When a page uses our stylesheet, the visitor's browser requests it from us and then requests the font files. Those requests necessarily reach our servers and appear in the logs described above. We do not set a cookie on those requests, do not correlate them across sites, and do not build a profile from them.

Aggregate usage counters are kept per font family per hour — how many times a family was served, and how many bytes — and, separately, per country and per server that answered. They exist to tell us which families are worth keeping and where capacity is needed. They contain no identifiers of any kind and cannot be linked back to a person.

Each of those requests also names the website it was made for: the browser sends the embedding page's address in its Origin or Referer header. From that we keep only the website's host name — example.com, never the page's path or query string, which can say things about the person reading it — and count requests per website, per family, per day. A request that names no website is counted without one. This tells us which sites depend on the service. The list of websites is seen only by the people who operate it; this site publishes only how many there are, never which.

Where a request comes from, and how many people

Your network address is looked up in a list of address ranges held on our own servers, to find the country it is in; no outside service is asked. We use the country for two things. Some typefaces are licensed differently from one country to another, so a family may not be offered, or not served, in yours. And we count requests by country — as totals per hour, like the counters above — to know where the service is used. The address itself is not stored.

We also count how many different people the service reaches, without keeping who they are. A request's address — only its network part, for IPv6 — and your browser's user-agent string are turned into a keyed one-way hash, and the hash updates a small statistical sketch: about four thousand numbers a day, from which a count of people can be estimated. A sketch cannot be turned back into an address, and the key that makes the hash is kept only on our servers.

When you open a family's page on this site, the page tells our stylesheet service that it was viewed, once it is on your screen. It sends no cookie and no identifier. The view is added to that family's count, and you are counted among its visitors in the way just described.

Who else sees any of this

Our hosting provider processes the traffic as part of running the servers. Beyond that, nobody: no analytics vendor, no CDN that is not ours, no advertising network. If we are compelled by a valid legal order to disclose something, we will comply and — where the law permits — tell you.

Where data is held

Reviews and catalogue records live in our own database. Font files are replicated across our edge nodes, which may be in several countries — that is what makes the service fast and what lets it keep working in regions with intermittent connectivity. Font files contain no personal data.

How long things are kept

Published reviews
Until you ask us to remove them, or until we remove them under the Terms.
Rejected reviews
Kept in a rejected state rather than deleted, so the same submitter cannot simply repost the same thing. Removed on request.
Submission hashes
Kept with the review they belong to, and deleted with it.
Server logs
A short operational window, then discarded.
Aggregate usage counters
Kept indefinitely: by the hour for a few months, then by the day. They contain no personal data.
Per-website counters
Kept indefinitely, like the other counters: by the day for about a year, then by the month. They name websites, not people; if your own site's name identifies you and you want its counters removed, write to us.
Visitor sketches
Each day's for about a year, then merged into one for its month, which is kept. They contain no addresses and cannot be turned back into any.

Your rights

Depending on where you live, you may have rights to access, correct, delete, restrict or object to the handling of your personal data, and to receive it in a portable form. Write to privacy@fontserver.ir and we will respond within one month.

One practical note. Because we hold no accounts and no raw addresses, we usually cannot tell which data is yours unless you tell us. To have a review removed, quote its text or the address you used when posting it. We would rather ask you for that than keep an identifier around in order to be able to answer.

If you are in the UK, the EU or the EEA and think we have handled your data badly, you may complain to your national supervisory authority. We would appreciate the chance to put it right first.

Children

The Service is aimed at people building websites and is not directed at children. We do not knowingly collect personal data from anyone under 16. If you believe a child has posted a review, tell us and we will remove it.

Changes to this policy

If this policy changes, the date at the top of the page changes with it, and a material change will be announced on the site. Previous versions are available on request.