LearnByTyping
PrivacyTerms

Privacy Policy

Last updated 4 October 2026

LearnByTyping (learnbytyping.com) is a site that sells exam-style practice you type. This page describes what the site stores and which companies handle it.

Operator

LearnByTyping is operated by Sean Bipat. Mailing address: 7101 SW 8th Ct, Plantation, FL 33317. Governing law and venue: the laws of the State of Florida, and any dispute will be heard in the state or federal courts located in Broward County, Florida.

Who to contact

We answer access and deletion requests within 30 days. We honor access, correction, and deletion requests from everyone, and we comply with the GDPR, the UK GDPR, and the CCPA to the extent they apply. Email [email protected].

Age

You must be at least 16 years old to use LearnByTyping. If you are under 18, you need a parent or guardian's permission.

Accounts

Accounts are created with Supabase Auth. You can sign in with Google or with an email magic link. Magic-link emails are sent through Supabase Auth. We store the email address on the account, a display name, and an avatar URL when the sign-in provider sends one. For a new account the display name is the name from Google when Google provides one. If it does not, we use the part of the email address before the @ sign. If there is no email address, the name is Player.

The Supabase client keeps the sign-in session in this browser's local storage so you stay signed in. This site's own code does not set cookies and does not use IndexedDB. Stripe Checkout and Google sign-in run on those companies' pages.

Study data

For a signed-in account we store, in Supabase, the profile (including plan and Stripe customer id), which packs are unlocked, typing stats (best speed, races, wins, and accuracy), saved progress (misses, coverage, typing preferences, and high scores), and a record for each practice session (pack, mode, game, score, speed, accuracy, and whether you finished it). A one-time copy can move progress that was saved in this browser onto the account after you sign in.

Before you sign in, and for settings that stay on the device, the browser's local storage can hold the active pack, typing preferences, high scores, character stats, a study streak, a short session history, sound on or off, and per-pack review, rotation, and session state. A one-time flag records that local progress was copied to the account. Session storage holds only a flag used if a pack file fails to load and the page reloads once.

Races with another player

A 1v1 race stores a match in Supabase: who hosted, who joined, the names shown for each side, the packs, the race settings, and each player's progress. The name the other player sees is your profile display name. If that name is missing, the race uses your account email address. If that is also missing, it uses Player.

Payments

Payments are taken by Stripe Checkout. A pack is $12 once. Monthly is $12 per month. Annual is $99 per year. Stripe collects the card details on Stripe's page. We store a Stripe customer id on the account. We do not store full card numbers. Checkout is opened with your account id and either the pack id or the plan (Monthly or Annual). Stripe also receives the email address on the Stripe customer.

Stripe tells our server when a checkout completes, when a subscription changes, and when a charge is refunded or disputed. We use that to update pack unlocks and the plan on the account.

A full refund of a pack payment removes access to that pack. A chargeback or other dispute that contests the payment also removes that access. A partial refund does not. An early-warning notice, before a dispute is opened, does not remove access. If we lose the dispute, the pack stays removed. If we win the dispute, access to that pack is restored, unless that same charge was fully refunded.

How long we keep data

We keep account and progress data while your account is active, and we delete that data within 30 days of a verified deletion request. Payment and tax records held by Stripe or by us are kept for as long as tax and accounting law requires. We keep dispute and refund records for fraud prevention.

Other services

Supabase stores accounts, study data, and race matches, and it sends magic-link sign-in email. Stripe processes payments. Google handles Google sign-in through Supabase. The site loads typefaces from Google Fonts (fonts.googleapis.com and fonts.gstatic.com). The pages are served as a static site on Cloudflare Pages.

We do not sell personal data. This site does not run third-party advertising or analytics trackers.

LearnByTyping is independent and is not affiliated with, endorsed by, or sponsored by PeopleCert (including AXELOS) or ServiceNow, Inc. ITIL® is a registered trademark of the PeopleCert group. All rights reserved. ServiceNow, the ServiceNow logo, Now, and other ServiceNow marks are trademarks and/or registered trademarks of ServiceNow, Inc., in the United States and/or other countries. Other company and product names may be trademarks of the respective companies with which they are associated.