Vantage — privacy

Covers everything Vantage runs: this Discord bot, the Vantage service the mod talks to (api.vantage.cherishev.dev, which also serves the web pages), and what the mod sends to either. Last reviewed 2026-09-27.

This page is the published copy of PRIVACY.md in the Vantage bot’s repository, which holds its source and its history.

Discord requires a privacy policy from any bot that collects user data, and a service that keeps statistics about players owes them one whether anybody requires it or not. This page describes what the code actually does, not what it is meant to do one day. Where it says something is never collected, that is a property of the code — the mod has no way to read it, or the service’s schema refuses it — rather than a promise about how the data is treated once it has arrived.

Who runs it

Vantage is built and run by one person, its maintainer. There is no company behind it, no staff and no partner. The service runs on one server, which only the maintainer has access to, and the bot runs beside it. Everything between the mod, your browser and the service travels over HTTPS.

Nothing described here is sold, shared or used for advertising, and there is no analytics of any kind. What leaves Vantage goes only where a job needs it: Mojang confirms a sign-in and serves skins, Hypixel answers a profile lookup, a public mirror serves item icons, and Discord receives the posts. None of them is told who is looking at a page.

Vantage is not affiliated with or endorsed by Hypixel or Mojang.

The Discord bot

What it receives

Only what you deliberately send it:

The bot runs with no message intents. It reads nothing anybody writes in the server except the input to its own commands and the posts in its two forum channels: their titles, to spot a duplicate before you post, and the text of each feature request, to grade it (below).

What it keeps

The bot has no database; it keeps a few small files beside itself.

It also posts, on its own, the project’s commits, tags and releases and the maintainer’s announcements. Those are about the code, not about anybody using it.

What it never does

Bug reports from the mod

The mod’s bug-report screen sends a report to the Vantage service, which files it as a post in the bugs forum through a Discord webhook. A report carries what you typed, the Vantage and Minecraft versions, the mod loader, the list of installed mods, the feature it is about, a stack trace if there was one, and the last lines Vantage itself logged — never the game’s own log, which can hold chat and a session token. The screen shows you the whole report before anything is sent.

Player names and uuids in it are replaced with pseudonyms such as player_a3f2e1 before it is stored or posted, so the people in your party do not end up in a public forum. The replacement is pattern-based: it catches the forms names actually appear in — rank tags, chat brackets, party lines, whispers, uuids — but not a name written into a sentence, which is why the screen shows you everything first.

The service keeps one row per distinct problem: a fingerprint, a count, when it was first and last seen, the first report’s summary, its Vantage version and the Discord thread it was filed in. Nothing in that row says who sent it. What you typed lives in the Discord post.

Looking up a player

/pv <name> in the mod, and /p/<name> on the web, show a player’s SkyBlock profiles. The name is turned into a uuid through Mojang’s public lookup (by the mod, or by the service for the web page). The service asks Hypixel for that uuid with Vantage’s one API key and answers with a document it builds from an allowlist — skills, collections, slayers, dungeons, pets, inventories and the like. A co-op partner’s data is emptied, so looking up one player never hands out three other people’s inventories, and the bank’s transaction log, which names other players, is dropped.

Vantage Stats

Vantage Stats is an opt-in statistics page: the mod records what you do in SkyBlock, and the service turns that into a page in the mod’s own look. Everything in this section applies only to players who turn it on.

It is off

It records nothing and sends nothing until you turn it on, and turning it on means reading a screen that lists every category, what each one sends and what is never sent — and then saying yes to the categories you want. Ten categories, each independent, all off to begin with. The feature’s own toggle only arms it; with every category off it still records nothing and still makes no network calls. Consent belongs to the Minecraft account signed in to the game, so a second account on the same computer starts with everything off.

Proving it is your account

Signing in uses Mojang’s own joinServer/hasJoined handshake: your game proves itself to Mojang, and Mojang tells the service it was you. Your Minecraft access token goes to Mojang and to nobody else — not to Vantage, not into a config file, not into a log. The check the service makes with Mojang names your username and a one-time code, and never your address. It runs only when you press the button on the consent screen or type /vantage stats link, only while you are in a world on Hypixel, and by itself at most once per game session, when the service says a sign-in has run out.

From that, the service keeps your uuid, the username Mojang gave back, your time zone (so a day on your page is your day, not the server’s) and a sign-in token of its own. The token is stored only as a hash and runs out about a month after the game last used it. A sign-in is recorded with a mod version and a last-used time, and no address, device or location. The game’s status screen signs out this computer, or every sign-in at once, browser sessions included; neither deletes any statistics.

What is sent, and under which switch

Numbers you generated about your own SkyBlock profile, as your own client observed them; none of it is read from Hypixel’s API. Each category below is a switch, and the sentence beside it is the one on the consent screen. The service enforces the same list and drops anything that arrives for a category that is off.

categorywhat it sends
ActivityWhen you played, where you were and for how long. Where means the island or area, never a position.
CombatWhat you killed and what killed you: mobs, bosses, slayers, dungeons, Kuudra, dragons, deaths.
GatheringWhat you mined, farmed, fished, foraged and hunted.
What droppedEvery item that landed in your inventory, counted by item.
EconomyCoins in and out, purse, bank, networth, what your museum is worth, and your own bazaar and auction activity.
ProgressionLevels and totals as they stand: skills, slayers, dungeons, collections, bestiary, Rift — and fairy souls, museum donations, gifts and island upgrades.
ItemsThe items you are carrying and storing: gear, accessories, pets, inventories, sacks.
EventsSeasonal events: chocolate, hoppity, carnival, bingo, Jerry.
TimelineA diary of your notable moments: level-ups, rare drops, personal bests, deaths.
VantageWhich Vantage features you use, and your Vantage Vet score.

With any category on, each upload also carries what a page needs in order to exist: your SkyBlock profile’s id, name and game mode, the mod and Minecraft versions, and a random id for this game install, made once and never derived from your hardware.

An item is sent as its SkyBlock id, name, rarity, lore and a short fixed list of attributes — never the item’s raw data. The parts of your profile the mod reads from menus you open (skills, pets, collections and so on) carry the time they were read, and the page shows them “as of” that time rather than passing an old number off as current.

The first time you turn it on, the mod also sends, once, the history it already keeps on your computer for that account — playtime, grind sessions, loot and slayer totals, the Vet counters, the death ledger — so the page is not empty on day one. It goes only into the categories you turned on, it is marked as imported, and it can be deleted on its own. Local files that hold other players’ names are never read for it.

What is never sent, ever

Chat, of any kind. Coordinates, of any kind. Your Minecraft access token, and any API key. File paths, or anything about your computer. Anything at all from outside Hypixel SkyBlock — the recorder pauses in lobbies and on other players’ islands, where the sidebar describes somebody else. And nothing about any other player: no party or lobby rosters, no co-op member names, no guild members, no auction sellers or bidders, no names of players who killed you. Item text that names somebody, which SkyBlock’s own lore does, has those lines removed before it leaves your computer, and a batch that still carries a name where no name could honestly appear is refused outright by the service.

These are not filters over data that was collected anyway: the recorder has no code path that reads them.

On your computer

The mod keeps its side in config/vantage/stats/: your consent and categories, the numbers it has recorded, uploads waiting to go, and the sign-in token, readable only by you where the system allows. None of it is part of a config profile you export or share. /vantage stats export writes everything recorded for your account to a file you can read, with no network call, in the same shape as the service’s own export — so you can compare the two and see that the service holds what the mod sent and nothing more.

What the service stores

Everything Vantage Stats holds is in its own database file, separate from the one that holds bug reports. The split is deliberate: the bug-report database holds nothing about any person, this one holds everything about the people who asked it to, and keeping them apart means a question about one never needs a caveat about the other.

It holds your account (uuid, username, time zone, storage used), your settings and share link, your SkyBlock profiles, your game installs (the random id, the mod and Minecraft versions, when each was first and last seen), the daily numbers and their lifetime totals, your sessions, your timeline, the profile sections and item details the mod sent, and your sign-ins. Every row exists because you turned a category on. The service adds your numbers up and serves them; it does not price, rank or compare you with anybody. Storage is capped at 64 MiB per account, which a heavy player does not approach in years of play.

Who can see it

You choose.

Either way you can keep a category collected but hidden from everyone but you, hide individual SkyBlock profiles, and round every time on the page down to the day, so a reader sees that you played on 20 September but not at what time. Switching from public back to link only takes effect at once; a public copy may survive in a cache for up to a minute, and the settings screen says so in those words.

Anyone you give your link to can open the page, and so can a link preview: paste it into Discord and Discord fetches the page to draw one.

Turning a category off

Turning a category off stops recording it and stops sending it — including anything already waiting in the upload queue — and hides what it recorded before from everyone but you, immediately, public page included. It does not delete what was already recorded: the settings screen tells you exactly how many rows are now hidden and puts the delete button underneath that number. Turning it back on resumes recording and shows the old rows again. Off and deleted are two different promises, and they are not run together.

How long it is kept

Two years by default, and you can set anything from 30 days to ten years. Days older than that are folded into lifetime totals and then deleted, so your all-time numbers survive without a day-by-day diary being kept forever. Each SkyBlock profile keeps its newest 1,000 sessions and 5,000 timeline entries. The service’s record of each upload, which lets a retried upload be recognised rather than counted twice, is kept for seven days, and expired sign-ins are deleted within the hour. An account nobody signs in to is not deleted by itself: its page stays as you left it until you delete it.

Deleting, and getting a copy

One command, from the game or from your page, and the answer is the number of rows removed from each table — a count rather than a confirmation, because a deletion nobody can observe is one nobody has reason to believe.

A deletion happens at once, in one transaction. There is no soft delete, no tombstone and no recycle bin, and nothing is kept “for analytics”. The only other copies are the database backups the service’s runbook calls for — nightly, kept for a fortnight — so a deleted row has left every backup within two weeks. If you no longer have the mod, ask the maintainer (below).

Deleting does not turn a category off, and turning a category off does not delete; both sit on the same screen, side by side, for that reason. You can also download everything the service holds for you, as one file, from the status screen or your page at any time.

What the person running it can see

The service has an operator’s dashboard that can be reached only from the server itself. For Vantage Stats it shows totals — how many accounts there are and how much they store — and never anybody’s recorded statistics, profile or page. To answer a request from you, the operator can look up one account by its exact uuid or exact name and see only its metadata: the uuid and name, whether the page is public, how many profiles and game installs it has, how much storage it uses, when it last synced and how many devices are signed in. It cannot list accounts or search by part of a name, it has a limited number of lookups an hour and a day, and every lookup is written to an audit log kept for 90 days, which records the account only as a keyed pseudonym — one that anyone holding the server’s database file could still match against an account they already know, for those 90 days. The operator can delete an account — the same deletion as Delete my account, answered with the same count of rows — and does so only when its owner asks, which is how you delete if you no longer have the mod. The operator can also pause uploads or sign-ins, and for maintenance can hold every change, deletions and sign-outs included, for at most six hours at a time; the mod keeps what it recorded and sends it later, and a deletion refused during maintenance is refused with a message asking you to try again, never accepted and then lost.

Signing in from a browser

To change settings from your page, the mod opens it with a one-time code that lasts 60 seconds and rides in the part of the address a browser never sends to a server, so it cannot land in anybody’s log. The page trades it for one cookie, __Host-vst: secure, HTTP-only, same-site, twelve hours long, and good for nothing but proving the browser is yours. It can change settings, export and delete, but never upload. The game’s status screen counts it among your sign-ins and Sign out of all revokes it, and the page can sign itself out.

Viewing a page, yours or anybody’s, sets no cookie. The page remembers your own display choices, such as its colour preset, in your browser’s local storage, which never leaves your browser.

Hypixel data on the stats page

Every number on a Vantage Stats page is one your own client saw. Reading parts of your profile from Hypixel’s API for this page instead is designed but not built. If it is built, it will use the one key the service already holds, fetch only when a page is opened and cache what it gets, and never run on a timer or build a history from repeated fetches — Hypixel’s own rules forbid that. Every section filled that way will say so on the page, and this page will name those sections in the same change that builds it.

What Vantage Stats does not do

No leaderboards, no comparing you with anybody, and no search by statistic. No free text that anybody can write on your page — no tagline, no comments — so there is nothing on it you did not generate by playing.

Addresses, logs and images

Anybody who connects to a server gives it an address. This is what Vantage does with yours:

The mod also talks to services Vantage does not run — Hypixel’s public resources, public price data, Mojang’s name lookup, GitLab for announcements and updates, and the site a feature names when you switch it on, such as Google’s translator for Translate On Click or elitebot.dev for the Elite leaderboards. Those calls go straight from your game to them and pass through nothing of Vantage’s.

Removing what you posted

For anything else, or to ask what is held about you, open a post in the bug forum or contact the maintainer through the mod’s repository, https://gitlab.com/Ekoss/vantage.

Changes

This page lives in the bot’s repository, so its history is the change log. Anything that widens what Vantage collects — in the bot, the service or the mod — has to change this page in the same commit.