Privacy Policy
Effective 30 October 2026 · Revised 4 November 2026
Tab Marshal collects only what it takes to run a mock trial tournament: the email addresses of the staff who sign in, the teams, students and judges a tournament enters, and its ballots. It does not sell personal information, show ads, or track visitors across sites. It counts visits with cookieless analytics that do not identify you.
Who we are and what this policy covers
Tab Marshal is tournament software for collegiate mock trial, operated by Colin Coleman (“Tab Marshal”, “we”, “us”). This policy covers tabmarshal.app, the admin site at admin.tabmarshal.app, the tab room, the team portal and the public pairings screens (together, the “Service”).
Two parties decide what happens to information in Tab Marshal:
- The tournament. A tournament’s directors, and the staff they add, decide which teams, students, judges and ballots go into their tournament and when pairings and results are published. For this tournament data we act on the tournament’s behalf, as its service provider. Questions about a tournament’s data are best sent to its directors, and we will help them answer.
- Tab Marshal. We decide how sign-in, security and the Service itself work. For staff sign-in information, technical data and messages you send us, we are responsible for the information.
Tab Marshal is independent software. It is not affiliated with or endorsed by the American Mock Trial Association or any other mock trial association.
Information we collect
Most of what Tab Marshal holds is entered by a tournament’s staff to run that tournament. The rest is what sign-in and delivering web pages need.
| Information | About whom | Where it comes from | Why |
|---|---|---|---|
| Email address and role (director or staff) on a tournament’s list, who added it and when | Directors and staff | The admin or a director types it in | To decide who may open each tournament |
| Sign-in identity: email address, plus the name and profile picture Google shares | Staff who sign in | Google, or a one-time code Cloudflare emails you | To confirm who you are |
| Activity log: who made each change, when, and what changed | Staff, and team captains (recorded as “team 12”) | Recorded as you use the Service | To explain any result, settle disputes and keep the Service secure |
| Tournament details: name, dates, location and rules settings, and the Tab Summary’s host line and tab room notes | No one in particular, except anyone staff name in the tab room notes (such as the AMTA representatives) | The admin and directors | To run the tournament |
| Teams: number, school, team name, roster of student names, and which student played which witness each round | Students on competing teams | Staff type them or import a spreadsheet; staff match witness characters to students from the ballots | To pair rounds and credit individual awards |
| Judges: name, email, phone, affiliation (firm, school or court), experience rating, per-round availability and check-in times, conflicts and notes | Judges | Staff type them or import a spreadsheet | To record attendance, assign judges without conflicts and contact them |
| Ballots: scores, totals, the judge, individual award ranks naming students, penalties, whether each ballot counts, and who entered and checked each ballot | Judges, students and staff | Staff enter them by hand or from a photo | To tabulate results |
| Ballot photos and the text read from them; the photo shows the judge’s name and handwriting and the students named for awards. Once a ballot counts, a copy of its photo with the totals and point differential marked on it | Judges and students | Staff photograph or upload paper ballots; the tab room draws the marked copy when the ballot is saved | To read scores for staff to check, and to show each team its own ballots |
| Spirit of AMTA forms: each team’s scores and ranks for its opponents, and two written responses about opponents and other teams deserving consideration | Teams and anyone named in their responses | Captains in the team portal, or staff from paper forms | To decide the sportsmanship award; authorized staff can search the responses |
| Team portal codes and sessions, stored only as hashes, and counts of wrong codes | Team captains | Created by the Service | To sign captains in and stop guessing |
| Technical data: IP address, browser type, the addresses requested and when | Anyone who visits | Your browser, received by Cloudflare | To deliver pages, protect the Service and fix errors |
| Visit statistics: the page visited, the site you came from, your country, device type, browser and operating system, and how quickly the page loaded. No cookies or browser storage are used, and the statistics are not linked to an email address or a team | Anyone who visits | A small script on our pages, run by Cloudflare Web Analytics | To see how many people use Tab Marshal, where from, and which pages are slow |
| Messages you send us: your name, email address and what you write | Anyone who writes to us | You | To answer you |
| Feedback reports: what you write, a picture of the page as you saw it (unless you untick it), the page’s address, the time, your browser, window and screen size, and the page’s last few errors and server replies; with your sign-in email (staff) or team number (a signed-in captain). Codes and passwords are left out of the picture, but it can show anything else on the page, such as names from the tournament | Whoever uses the Send feedback link in the tab room, team portal or admin site, and anyone shown on the page | You, when you use the Send feedback link and send the form | To find and fix what went wrong, and improve the Service |
When staff import a spreadsheet, the file is read in their browser and only the columns they match (names, and for judges any contact details) are sent to us.
We do not ask for students’ dates of birth, student ID numbers, grades or contact details, and we do not collect payment details, government ID numbers or precise location. Judge notes and other free-text fields hold whatever staff type, so tournaments should keep sensitive information out of them.
Signing in with Google
Staff can sign in to the tab room and the admin site with a Google account. Sign-in runs through Cloudflare Access, which asks Google only for the basic scopes openid, email and profile.
- What Google shares: your email address, name, profile picture and a Google account identifier. Google does not share your password. We cannot see your Gmail, Drive, Calendar, contacts or any other Google data.
- What we use: your email address, and nothing else. We match it against the tournament staff lists to decide which tournaments you may open, and we record it in a tournament’s activity log beside each change you make. Your name and picture stay with Cloudflare Access, which keeps a record of who has signed in.
- What we don’t do: we do not sell Google user data, use it for advertising, use it to train artificial intelligence models, or let anyone read it except to run sign-in, secure the Service or comply with the law. We share it only with Cloudflare, to run sign-in, and as the law requires.
- Removing access: you can remove Tab Marshal from your Google Account at any time, under Security, in the list of third-party connections. That stops Google sign-in; it does not take you off a staff list. Ask a director or us for that.
Tab Marshal’s use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
You don’t need a Google account. You can sign in instead with a one-time code that Cloudflare emails to the address on the staff list.
How we use information
We use information only to run tournaments and the Service that runs them:
- Running tournaments: pairings, judge assignments, ballot tabulation, standings, individual awards, pairing cards and the team portal.
- Controlling access: deciding who may sign in and which tournaments each person may open, and keeping Cloudflare’s sign-in list in step with the staff lists.
- Understanding use: counting visits to our pages, and where they come from, in aggregate, so we can see what is used and fix what is slow. We do not use these statistics to identify, profile or advertise to anyone.
- Keeping a record: the activity log, so a tournament can explain any result or change after the awards.
- Reading ballots: sending ballot photos to our AI provider when staff scan them (see Ballot reading with AI).
- Security and support: stopping code guessing and misuse, and investigating a problem a tournament reports, including the feedback reports sent with the Send feedback link. Only Tab Marshal’s administrator sees those reports.
- Talking to you: answering messages, and telling directors and staff about changes to the Service or these policies.
- The law: meeting legal obligations and responding to lawful requests.
Pairings, judge assignments and standings are calculated automatically from the rules the tournament chooses. The tournament’s staff review them and decide what to publish.
We do not sell or rent personal information, share it for targeted advertising, build profiles of people, or use tournament data to train AI models.
What is public, and who sees what
A tournament’s directors choose when each round’s pairings are published and when final results are released. Before pairings are published, the pairings screen shows only the tournament’s name. The team portal’s sign-in page publicly lists the names and dates of upcoming and current tournaments and those ended in the last 14 days.
| Who | What they can see |
|---|---|
| Anyone, without signing in (the pairings screen) | The tournament’s name; for published rounds, team numbers, school or team names, sides and courtrooms; the names of the judges in each courtroom and whether they preside or score; pairing cards with closed non-final results and margins through the round before the selected snapshot; round ranks after next-round pairings are published and the policy permits; final-round results and final places once tournament results are released |
| Anyone opening the team portal | The names and dates of upcoming tournaments, tournaments under way, and tournaments ended in the last 14 days |
| A team’s captain, signed in with the team’s code | The team’s pairings, opponents and courtrooms; its roster; its Spirit of AMTA form; pending win/loss/tie from complete scoring ballots if provisional release is selected; after results are released (or after each non-final round closes, if the tournament allows), its own ballots, including non-scoring partial ballots labelled “does not count”, the judges’ names, every score, and the individual awards on those ballots, which name students on both teams, and a photo of each of those ballots with its totals and point differential marked, which shows the judge’s handwriting and the students named for awards; and the tab summary of every team’s record |
| The bye-buster team’s volunteers, signed in with a QR code the tab room shows them | The same as a captain for the bye-buster team, except the Spirit of AMTA form, which the tab room enters for them |
| The tournament’s directors and staff | Everything in their tournament, including judges’ contact details, ballot photos and the activity log |
| Tab Marshal’s administrator | Every tournament, to set tournaments up and give support; and every feedback report |
Judges’ contact details, availability, check-in times, notes and conflicts are never shown on public pages or in the team portal.
Service providers
We use these providers to run Tab Marshal. Each receives only what its job needs, under its own terms and privacy policy.
| Provider | What it does for us | What it receives |
|---|---|---|
| Cloudflare, Inc. | Hosts the website, database and ballot photo storage; runs staff sign-in (Cloudflare Access); emails one-time sign-in codes; measures page visits (Cloudflare Web Analytics) | Everything stored in Tab Marshal; IP addresses and request data; sign-in identities and sign-in logs; the visit statistics described above; the list of staff email addresses allowed to sign in |
| Google LLC | Sign in with Google; the web fonts on every page | Your sign-in request (Google already holds your account); when a page loads its fonts, your IP address and browser details |
| Anthropic, PBC | Reads photographed ballots, through the Claude API | Ballot photos, and the student and witness names that help read them, only when staff scan a ballot |
| Google LLC (Google Workspace), our email provider for info@tabmarshal.app | Hosts the info@tabmarshal.app mailbox | Messages you send us and our replies, with your name and email address |
We may also disclose information:
- when the law requires it, such as a valid subpoena or court order;
- to protect the safety, rights or property of people using the Service, the public or Tab Marshal;
- to a successor if Tab Marshal is transferred, reorganized or sold, under this policy, with notice to directors first;
- with the consent of the people it is about, or at a tournament’s direction.
Ballot reading with AI
Staff can photograph or upload paper ballots instead of typing them. Each ballot photo is sent to Anthropic’s Claude API, which reads the scores, the header, the written totals and the individual awards.
- What is sent: the photo of the ballot, the names on both teams’ rosters, and the names of the case’s witnesses, so handwritten names can be matched to the right student.
- Competitive results: a reading waits for a staff member to check it against the paper ballot before it counts toward competitive results. If the director selects immediate provisional release, scores entered or reviewed by staff can show pending win/loss/tie before second-person verification; pending rounds are excluded from displayed cumulative figures.
- At Anthropic: under Anthropic’s commercial terms, data sent through its API is not used to train its models. Anthropic deletes API inputs and outputs after a limited period, unless it must keep them longer to enforce its usage policies or comply with the law.
- At Tab Marshal: we keep the photo and the reading with the tournament, for as long as we keep the rest of its data.
A tournament that prefers not to send ballots to an AI service can type every ballot in by hand. Scanning is never required.
How long we keep information
We keep a tournament’s data so its results can be explained after the awards, then delete it.
| Information | How long we keep it |
|---|---|
| Tournament data: teams, rosters, judges, ballots, ballot photos (and their marked copies) and readings, Spirit of AMTA ratings and written responses, and identifying information in the activity log | Until the tournament’s directors ask us to delete it, or 24 months after its last day, whichever comes first |
| Your place on a staff list | Until a director or the administrator removes you, or the tournament is deleted. Changes you made stay in that tournament’s activity log until the tournament is deleted; those records are then anonymized |
| Team portal codes | Until the tournament makes a new code or is deleted |
| Team portal sessions | 4 days, or until sign-out; the expired record is deleted with the tournament, if not sooner |
| Sign-in records at Cloudflare | For Cloudflare’s log retention period for our plan |
| Visit statistics | For Cloudflare’s retention period for Web Analytics |
| Messages you send us | As long as we need to answer you, then 24 months |
| Feedback reports and their pictures | 24 months after they are sent, or until we delete them sooner; a report sent from a tournament is deleted with that tournament |
We check for expired tournaments daily and delete their records and ballot photos 24 calendar months after the last day. If a tournament has no end date, we use its start date; if neither date is set, we use the day it was created. Directors can ask us to delete a tournament earlier.
Demo workspaces. An administrator records a session name, their own account email, its start and expiry time, and the chosen fictional tournament state. Passwords and browser sign-in tokens are stored only as hashes. Demo access ends after three hours or sooner if the host ends it. Workspace records, visitor edits and sign-in records are deleted by scheduled cleanup, normally within five minutes of expiry; failed cleanup is retried. Resetting a demo deletes its previous state. Use fictional information only. Live ballot scanning and feedback uploads are unavailable in demos. Anonymous activity records are removed during demo cleanup. Cloudflare recovery history may retain deleted database data for its configured recovery window.
When a tournament is deleted, we anonymize its activity records by removing staff identities, the tournament identifier and all detail text. We retain only when each action happened and the type of action, including the deletion itself; these anonymous records have no fixed retention period. The same anonymization applies to records left by earlier tournament deletions.
Deleted data can stay in our database provider’s recovery history for up to 30 days before it is gone for good. We may keep information longer when the law requires it, or to resolve a dispute we have been told about.
Security
We protect information with these measures:
- Every page and request is encrypted in transit (HTTPS), and Cloudflare encrypts stored data at rest.
- The tab room and the admin site sit behind Cloudflare Access. Only people on a tournament’s staff list can sign in, and each sees only the tournaments they are on. Removing someone closes the tournament to them at once, even mid-session.
- Team portal codes are stored only as salted PBKDF2 hashes, and sign-in tokens only as SHA-256 hashes, so a copy of the database cannot be used to sign in. Team portal sign-in is protected against guessing.
- Ballot photos are served only to signed-in staff of their tournament. The marked copy of a ballot’s photo is also served to the signed-in captain of a team in that trial, and only once the tournament shows that team its ballots.
- Every change in a tournament is logged with who made it and when.
- Keys and tokens are kept as encrypted secrets, never in the code.
No system is perfectly secure. If a breach affects your information, we will notify the affected tournaments and people as the law requires. Please report security problems to info@tabmarshal.app.
Your choices and rights
You can ask to see the information we hold about you, correct it, delete it, or get a copy. Send the request to info@tabmarshal.app.
- Staff and directors: we handle your sign-in information directly. A director or the administrator can take you off a tournament’s list at any time.
- Students, judges and others named in a tournament: the tournament controls that data, so we pass your request to its directors and help them act on it. You can also contact the directors yourself.
- Checking it’s you: we may ask you to confirm the request from the email address we hold, or to give details only you would know.
- Timing: we answer within 30 days, and tell you if we need longer, up to the time the law allows.
- Limits: we may keep information the law requires us to keep, or that a tournament needs to settle a dispute it has told us about. We will say what we kept and why.
We will not treat you differently for making a request.
United States residents. Some state laws, such as California’s, give residents these rights. We honor them for everyone, wherever they live. We do not sell personal information or share it for cross-context behavioral advertising, as those laws define those terms.
European Economic Area, United Kingdom and Switzerland. We rely on legitimate interests to run tournaments that organizers ask us to run and to keep the Service secure, on contract to provide the Service to tournaments, and on legal obligations where they apply. You may also object to our use of your information, ask us to restrict it, and complain to your data protection authority.
Students, minors and school records
Tab Marshal is built for collegiate competition and is not directed at children under 13. We do not knowingly collect information from children under 13. If we learn that we have, we will delete it.
If a tournament includes competitors under 18, its organizers are responsible for any permission from parents or guardians that their rules, their schools or the law require before entering those competitors’ names.
Tab Marshal is not run by or for any school, and it keeps tournament records for the tournament, not for a school. A school whose policies protect student names or competition results should confirm it may share them before its teams’ rosters are entered.
Where data is stored
Tab Marshal stores data with Cloudflare in the United States. Pages are delivered from Cloudflare’s servers nearest to you, and our other providers may process data in the United States. If you use Tab Marshal from outside the United States, your information is transferred there.
Changes to this policy
When we change this policy, we post the new version here with a new effective date. For a significant change, we tell directors and staff by email or in the tab room at least 14 days before it takes effect.
Contact
Questions, requests and security reports: info@tabmarshal.app
Colin Coleman1130 N College St, Unit 557
Charlotte, NC 28206