Privacy policy
Effective November 10, 2026
Branch is a small, invite-based app for working through coding-interview problems with friends. It has a web app and an optional Chrome extension, Branch for LeetCode. This page explains what each collects, why, who can see it, and how to remove it. The rules for using Branch are in the terms of service. Branch is independent and not affiliated with LeetCode.
What the web app stores
- Your account: name, email address, and the Google or GitHub account you sign in with (Branch receives its name, email address, and profile photo). Accounts made before Branch moved to Google and GitHub keep a password, stored only as a secure hash, until they connect one.
- Your profile and settings: username, optional bio, time zone, appearance, which photo to show, whether to share your solves, and what to do with study sessions.
- A photo, if you upload one: Branch shrinks it to a small square in your browser and stores it with Vercel Blob, under an address that can't be guessed. Otherwise the photo from Google or GitHub is shown, loaded from them and updated each time you sign in. If you sign in with Google, Branch keeps the sign-in token Google gives it, encrypted, and uses it only to fetch your current photo once a day while you show it. You can revoke it in your Google account at any time.
- Sign-in sessions: a session cookie, and the IP address and browser details of each session, used to keep you signed in and to protect your account.
- When something breaks: for an unexpected error, when and where it happened (the page's address without its query, and a request ID) and the error's technical description, used only to fix it. These records are tied to the request, not your account, and never include what you wrote or your code.
- Rate limits: counts of recent actions (reactions, marking problems solved, and a few others) per account, to stop runaway use.
- What you do in Branch: groups and invites, roadmaps, the problems you mark solved, your reviews and how they went, solutions you paste, study sessions (when each started and stopped), the time the extension measured on each solution, posts, comments, and reactions, reports you make, and the people you block.
What the Chrome extension reads and sends
Once you connect, the extension watches the results of submissions you make on leetcode.com and neetcode.io in that browser, and how long each problem page is open and in view. For each accepted one, it sends Branch the problem, the language, your code, the time, and how long you spent on the problem. Your code is visible only to you in Branch unless you choose to share it, and your times only to you. Nothing else on either site is read or sent, and the extension never makes requests to them.
- Sent to Branch for each accepted submission: which site it was made on (leetcode.com or neetcode.io), the site's ID for it (LeetCode's submission ID, or the time neetcode.io judged it), the problem, the language, your code, when it was judged, and how long the problem's page was open and in view before it was accepted (from extension version 1.2.0).
- Read for the problem timer: which problem a leetcode.com or neetcode.io tab is on (from its address) and whether the tab is in view. The minutes show on the extension's toolbar button and are sent only with an accepted submission. Your times are shown only to you in Branch.
- Read on neetcode.io to tell which problem it is: the name of the problem you open. Nothing else from the problem's page is read or sent: not its description, NeetCode's solutions, or your past neetcode.io submissions.
- Not read or sent: your username or profile on either site, other pages you visit (only whether a page is a problem, and which), your browsing history, your cookies or passwords, and submissions that aren't accepted.
- Stored in your browser only: the key that connects the extension to your Branch account, up to 50 accepted submissions waiting to be sent, the popup's last-sync status, your time budget, and each open tab's problem timer (kept until the browser closes). Disconnecting deletes them, except the budget.
Nothing is collected until you connect the extension to your Branch account, and nothing is collected after you disconnect it.
How it's used
Only to provide Branch's features: tracking which problems you've solved across your groups and roadmaps, showing you your own synced code, and the activity you choose to share. Branch doesn't sell data, show ads, or use data for advertising.
The use of information received from the extension adheres to the Chrome Web Store User Data Policy, including the Limited Use requirements.
Who can see it
- Your code is visible only to you unless you share a solution to a group yourself (Solutions → Share). Then that group's members see what you chose to include: its estimate, a note, and your code only if you ticked it. Your code goes on your automatic solve posts only if you turn on "Add my code to my solve posts" (Settings → Sharing; off unless you choose it): then that solve's group sees the code, folded until opened, and turning it off takes it off every post at once. Its analysis is never posted automatically.
- Your reviews and how they went are visible only to you, and so is Your stats.
- When you report a post or comment, the group's admin sees the reason and any note, but not that it was you; nobody else sees reports. When you block someone, they aren't told, and only you see the difference.
- Your study sessions (when each started and stopped) are visible only to you, unless you share one to a group when it ends, or choose in Settings → Sharing to share them all to one group. Then that group sees how long you studied and any note you added.
- Code analysis: Branch estimates each solution's complexity with its own analysis service, which runs on Vercel like the rest of Branch. It reads the code without running it and keeps nothing; the estimate is stored with your solution and shown only to you. No AI provider or other company sees your code. You can turn analysis off in Settings → Code analysis, which deletes your estimates.
- Members of your groups see your name, username, photo (unless you choose initials), and, for problems their group's plan assigns, whether you've solved them. A post about a solve appears only if you turn on "Share my solves".
- People don't read your data. The only exceptions are when you ask for help with your account, to investigate security problems or abuse, or when the law requires it.
- Branch runs on Vercel (hosting and uploaded photos) and Neon (database), which process data only to run the service. If you sign in with Google or GitHub, they handle that sign-in under their own policies. Data isn't shared with anyone else.
How long it's kept
- Your account and what you create stay until you delete them or your account.
- An uploaded photo is deleted as soon as you replace it or switch to another photo.
- Your solutions (synced or pasted), their code, and their estimates stay until you delete them (Solutions). An estimate goes within a day of its solution, and at once if you turn analysis off.
- Study sessions stay until you delete them (Your stats). Deleting one also deletes the posts that shared it.
- A synced submission for a problem that isn't in Branch is deleted after 30 days unless the problem is added.
- Deleted posts, comments, and submissions are removed at once. The database host keeps short-lived backups for recovery, which expire on their own.
- Error records are deleted after 14 days, and rate-limit counts after a day.
Your choices
- Disconnect the extension from its popup or from Settings at any time.
- Delete any solution, or all of them, from Solutions.
- Turn code analysis off or on in Settings → Code analysis.
- Upload a photo, use the one from Google or GitHub, or show initials, in Settings.
- Turn sharing on or off, and delete your posts and comments, whenever you like.
- Report a post or comment to its group's admin, and block or unblock people (Settings → Blocked people).
- Choose in Settings → Sharing whether your code goes on your solve posts, and what happens to a study session when it ends: ask each time, always share to one group, or never.
- To delete your account and everything in it, or for any question about your data, email lawrencedegoma02@gmail.com.
Changes
If this policy changes, the new version appears here with a new effective date. Changes that affect what the extension collects are shown in the extension before they apply.