FootballCFB & MaddenHoopsNBA 2KFeaturesInstallFAQ
Install Tempo Read the FAQ

Legal

Privacy Policy

Tempo is a Discord bot that runs a league inside your server. This page describes exactly what it keeps, why, and how to get rid of it. It covers both products, Tempo Football and Tempo Hoops.

Last updated 28 August 2026

Tempo Leagues operates the Tempo service. In this policy, “we” and “us” mean Tempo Leagues. We are based in Alabama, United States. For any question about this policy, and for any request to see or delete your data, email [email protected]. Tempo is an independent project and is not affiliated with Discord Inc., Electronic Arts, or Take-Two Interactive.

This policy covers both products, Tempo Football and Tempo Hoops. They are separate Discord applications running on separate databases, and a league's records never move between them. Where the two differ in what they store, this page says which one it is talking about.

What we store

Tempo stores the minimum needed to run your league between restarts. In practice that means numeric Discord identifiers, text your league types in, and a small billing record for the server's subscription. Everything below is filed under your Discord server ID.

Discord identifiers

Server IDs, channel IDs, role IDs, message IDs and user IDs. Message IDs are stored so the bot can find and edit its own posts — a draft board or an open-teams list — after it restarts. User IDs appear wherever a record has to remember which coach it belongs to: a points balance, a request, a vote, a trade.

League configuration

Your league name, time zone, welcome and leave messages, which features you have switched on, which channels Tempo posts in, and which roles and members you have designated as staff or, in Tempo Hoops, as the trade committee. Also your economy settings: the point cost of a rating bump or a badge tier.

Teams and coaches

Team names, abbreviations, conferences, colours, logo links, ratings and notes, which team role Tempo created, and which coach currently holds each team. Each coach has a points balance.

Points ledger

Every award and deduction, with the amount, the resulting balance, the short reason typed alongside it, and what caused it. This is append-only, which is what makes a balance dispute checkable.

Requests and approvals

Upgrade requests carry the in-game player name, the rating or badge being bought, the cost, who asked, who resolved it and any note left on the decision. In-game player names such as WR C. Bell or PG A. Reeves describe characters in a video game, not real people. Tempo Football also stores your attribute list; Tempo Hoops additionally stores league requests such as a force-win or a position change, including the free-text detail entered with them.

Trades (Tempo Hoops)

Trade block listings written by a coach, trade proposals recording what each side gives in the coach's own words, the committee's individual votes, and the reason recorded when a proposal is resolved or overridden.

Drafts and the lottery

The draft's name and status, who signed up, the generated pick order and each participant's selection. In Tempo Hoops this includes the lottery result.

Votes and picks

When a member votes on a Game of the Week (Tempo Football) or a picking game (Tempo Hoops), Tempo stores that member's Discord ID, the team they picked and whether they were right, so the payout runs once and correctly.

Rivalries and schedule

Rivalry names, the two teams and coaches involved, every recorded result with its score and week label, and who entered it.

Rulebook (Tempo Football)

Rule titles, bodies, categories, search aliases and any image link you attach, plus which staff member last edited each one.

Stream links

If a coach saves a Twitch channel for stream announcements, Tempo stores that URL against their Discord ID, plus the time of their last announcement so the once-an-hour limit can be enforced. A coach can overwrite it at any time, and it is the only third-party account link Tempo holds.

Billing records

For a server with a subscription: the Stripe customer, subscription and price identifiers, the Discord ID of whoever purchased it, the current billing period dates and whether it is set to cancel. This is what tells the bot your server is entitled to run. It contains no card details and no name or address. Those stay with Stripe.

What we deliberately do not store

  • Discord usernames and display names. Tempo reads your nickname when it builds a message and then discards it. Nothing in the database records what you are called — only your numeric Discord ID.
  • Message content. Tempo does not log, read or retain the conversation in your server. It stores the ID of its own posts so it can edit them, and nothing else.
  • Direct messages, voice, attachments, or any content from channels it has not been configured to post in.
  • Email addresses, real names, IP addresses or payment card details. Nothing in either database has a column for them.

When you contact us

Separately from the bot: if you email [email protected], we hold your message and your email address for as long as it takes to deal with it and to keep a record of what was agreed. That mailbox is delivered by Cloudflare Email Routing, which forwards it to the inbox we read. It is not connected to your league's records unless you give us the server ID yourself.

Why we store it

Solely to provide the features you enable: to remember who holds which team, what the points balance is, which upgrade requests are pending, and where the boards live. There is no profiling, no advertising, no behavioural analytics, and your data is never sold or used to train anything.

Who it is shared with

Two parties, both necessary to run the service:

  • Discord — everything Tempo does is a Discord API call. Discord's own privacy policy governs that relationship.
  • Stripe — when you subscribe a server with /activate, Stripe processes the payment. We send Stripe your server ID and the purchasing user's Discord ID so the subscription can be matched back to your server. We never see or store your card details; Stripe's privacy policy applies.

There is no analytics SDK, no error-reporting service and no third-party tracking of any kind in the bot.

Where it lives

In a PostgreSQL database reachable only by the bot, over an encrypted connection. Football and Hoops have a database each and neither can read the other's.

The infrastructure is run for us by Railway (the bot itself, in their San Francisco region) and Neon (the database), alongside Discord and Stripe above. We are based in Alabama, United States and these providers operate in the United States, so if you are outside the US your league's records are transferred there. We do not sell or otherwise transfer them to anyone else.

How long we keep it

We want to be straightforward about this rather than reassuring:

  • When a coach leaves your server, Tempo frees their team immediately and reopens it. Their points history is kept, because a league's ledger has to stay intact for the seasons it covers.
  • Removing Tempo from your server does not automatically erase your league. The data is retained so that re-adding the bot restores your league rather than wiping it. If you want it gone, you have to ask.
  • Point transactions are append-only. They are never edited after the fact, which is what makes the balance auditable.
  • Billing records outlive the league. If we delete your league we still keep the subscription record: the Stripe identifiers, the dates and the purchaser's Discord ID. We have to be able to show what was sold and to whom. Stripe keeps its own copy under its own retention rules.

Deleting your data

Ask us and we will delete your server's records. There is no self-service command for this yet, so it goes through a person: email [email protected] and include your Discord server ID so we delete the right league.

  • A request from a server owner or administrator covers the whole league.
  • An individual coach can ask for their own rows to be removed from a league they were part of.
  • We will confirm when it is done. Deleting a league's records does not cancel its subscription. Do that in Stripe's billing portal through /activate, or ask us and we will do it for you.

Children

Discord requires users to be at least 13, or older where local law sets a higher age. Tempo is not directed at children and we do not knowingly store data from anyone below Discord's minimum age.

Changes

If this policy changes in a way that affects what we collect or who we share it with, we will say so here rather than quietly editing the page around it. The date at the top always reflects the current version.

Contact

Questions, corrections and deletion requests all go to one place: [email protected]. The support page lists what to include so we can act on it quickly.