The short version
pkmnlab is a set of static pages. There is no account to create, no cookie banner to dismiss,
no analytics script, and no request to anyone else's server. The fonts, the sprites, the type
data and the damage engine are all served from pkmnlab.com, which means no advertising network,
no font host and no tag manager ever learns that you were here.
That claim is easy to check rather than take on faith: open your browser's network panel on
any page of this site and every single request will be to this domain.
What the site keeps in your browser
One thing. A localStorage key named pkmnlab-theme holding either
light or dark, written when you press the theme toggle so the next page
does not flash the wrong colour at you. It never leaves your browser, it is not readable by
anyone else, and clearing site data removes it.
The tools also write their state into the address bar — ?team= on the builder,
?types= on the type calculator, ?roll= on the random generator, and so
on — so that a page can be reloaded, bookmarked or shared and come back exactly as you left it.
That state lives in the URL itself. Nothing is stored for you and nothing is stored about you.
What the server keeps
An ordinary web server access log: IP address, timestamp, the URL requested, the referring
page, and the browser's user-agent string. It rotates daily and is deleted after
14 days. It exists so that a page returning errors or a burst of abusive traffic
can be diagnosed. It is not aggregated into reports, not joined to anything else, not used to
build a profile, and it never leaves the machine.
One consequence is worth stating plainly. Because the tools put their state in the query
string, opening a shared link means that link's contents — the team code, the types you picked —
appear in that log the way every other requested URL does. A team code is a list of Pokémon, so
this matters very little, but treat anything you put in a URL here as public.
Cloudflare
pkmnlab.com is served through Cloudflare, which sits between you and the server as a cache and
a shield. Cloudflare therefore sees what any proxy sees — your IP address, the request, your
user-agent — and handles it under its own privacy terms rather than these. It may set a cookie of
its own, __cf_bm, to tell browsers apart from bots. pkmnlab does not set it, does not
read it, and gets nothing from it.
Young visitors
A large share of the people who use a Pokémon team builder are children, which is the reason
this site was built the way it was. No personal information is collected from anyone of any age,
because there is no mechanism here capable of collecting it: no form, no login, no upload, no
comment box, no third-party script. There is nothing held about a visitor that could be requested
or deleted, because nothing is held.
If you want something done
There is no account to export, no profile to erase and no list to unsubscribe from. If you
believe any statement on this page is inaccurate, or you want your IP address removed from the
server log before it expires on its own, write to abuse@pkmnlab.com and it will be handled.
Changes
The date at the top of this page is the date it last changed, and it changes whenever the
substance does. There is no mailing list to announce it on, which is rather the point.