Help, terms, privacy and refunds
Help
Common questions
Do I need an account?
No. Every lesson and track works without one, and so do predict mode, your own input and the code editor. An account saves your progress and predictions across devices.
How do I use a lesson?
- The arrow keys step forward and back. Space plays and pauses.
- Predict mode stops before each decision and asks what happens next. Keys 1 to 4 answer.
- Copy link shares the step you are on, with any input you ran.
- The player remembers where you stopped and offers to resume there.
Can I run a lesson on my own input?
Yes, on every lesson. It runs in your browser, which needs to be Chrome 119, Firefox 120, Safari 18.2 or newer.
Can I write the algorithm myself?
Yes, in JavaScript or Python, on lessons with a Write it yourself section. Your code runs in your browser against the lesson's own examples, and your draft is saved there.
What is a track?
An ordered path through the lessons: Foundations and Interview Core. Progress counts the lessons you have finished, so switching tracks loses nothing. See tracks.
Will my progress move to my account when I sign in?
Your predictions can. This browser keeps the latest 200 you answered while signed out, and once you are signed in your dashboard, the review queue page and the Buy Pro form in your account settings offer to add them to your account. Nothing is uploaded until you press that button, and what you add is then removed from the browser. Reset progress in Preferences forgets them.
The steps you reached stay in this browser and are not merged into the account.
How do I sign in?
With your email and a password, or with Google. The iPhone app also offers Sign in with Apple. Forgot your password? Use the link on the login page. To sign out your other devices, use Other browsers in settings.
What emails will I get?
Address confirmations, password resets and receipts, which are answers to something you did, and the one-time welcome. Only the welcome has no switch, and its unsubscribe link stops anything after it.
Release notes and Reminders are off unless you turn them on in settings. Reminders is the weekly review reminder, for Pro accounts only, saying how many questions are due. It is not sent when none are due. Every optional email has an unsubscribe link that needs no sign-in.
How do I delete my account?
Yourself, in settings, immediately. Deleting your account says what is removed. To stop every optional email and sign out everywhere while keeping your progress, switch the account off instead.
Settings also has a download of what your account holds, as a file.
What does Pro cost, and how do I buy it?
Everything above is free. Pro adds a review queue, a readiness score and timed drills, and pricing has the price. On the web, buy it from the Billing card in account settings. In the iOS or Android app, open AlgoScope Pro in Settings. Pro is on your account, so it works wherever you sign in.
A store purchase not showing? Tap Restore purchases on the app's AlgoScope Pro screen. Paid but Pro is not on your account? Contact us with the reference on your receipt.
Is there an app?
Both are live: search for AlgoScope in the App Store or on Google Play. The apps have the same lessons, work offline and sign in to the same account.
Signed up on an iPhone with Apple? To sign in here or on Android, use Forgot your password? with the email address Apple shared with us.
Something in a lesson looks wrong
Press Report in the player, or email us with the lesson's address and the step.
Still stuck?
Email contact@algoscope.net. A person reads every message. Requests about your own data are answered within 30 days.
Terms of use
Last updated 24 October 2026
These terms are between you and NUB LABS PRIVATE LIMITED, trading as AlgoScope ("we"). By using AlgoScope you agree to them.
The service
AlgoScope teaches data structures and algorithms through lessons you step through, questions that ask you to predict the next step, and an editor that runs your code in your browser. Learning is free. Pricing and refunds cover the paid tier.
Accounts
- Use an email address you can read. Signing in depends on it.
- An account is for one person. Keep your password to yourself.
- You are responsible for what happens under your account.
- You can delete your account at any time.
- We may suspend or remove an account used to attack the service or harm others.
Age
There is no minimum age to create an account or to buy Pro. Reading the lessons needs no account at all.
Acceptable use
- Do not try to break, overload or access parts of the service that are not yours.
- Do not send automated requests at a rate that slows it for others.
- Do not use the code editor to attack anything.
- Do not republish the lessons as your own.
Your code
Code you write here is yours. It runs in your browser and is never sent to us. See your code and your input.
No warranty
Lessons are teaching implementations, not production code. Check anything you use from here. The service is provided as is, with no uptime promise and no guarantee that it is free of mistakes, and we accept no liability for how you use it. Please report mistakes.
Changes
When these terms change, the date above changes. A change that affects what you paid for or what we hold about you will be announced.
Privacy
Last updated 24 October 2026
One policy for the website and the iOS and Android apps: the website, the iOS app, the Android app and what applies to all three.
Privacy in short
- The controller is NUB LABS PRIVATE LIMITED, trading as AlgoScope. See who is responsible.
- Every lesson works without an account, on the website and in both apps.
- Code and input you type stay on your device and are never sent to us.
- No ads, no advertising identifiers, and nothing sold or shared for marketing.
- No analytics is running on the website or in the apps today.
- An account is optional and works on all three. Deleting it removes everything linked to it, with four exceptions that keeping it, and deleting it lists. Backups expire within two months.
What this website records
Reading without an account
The site remembers a few things in your browser. Nothing in this table is sent to us unless you send it, and the only row you can send is as:predict-answers. Clearing your browser data removes all of it.
| Stored as | What it is for |
|---|---|
as:progress | Where you are in each lesson, and which you have finished. It is never uploaded. |
as:predict-answers | Predict-mode answers you gave while signed out: which step, which option you chose, whether it was right, and when, with a short code for the question and an id for the answer. The latest 200 are kept. Uploaded only if you sign in and press the button on your dashboard, the review queue page or the Buy Pro form in your account settings that adds them to your account, then removed from this browser. |
as:track | The learning track you are following. |
as:theme | Light or dark, if you chose one. |
as:motion | Full or reduced animation, if you chose one. |
as:consent | Your answer about analytics, and when you gave it. |
as:analytics-id | A random id for analytics, made only if analytics is on and you allowed it. Deleted when you withdraw. Not linked to your account. |
as:lang | The language you read code listings in. |
as:sound | Whether the player makes a sound. |
as:predict-intro | Whether you have seen the predict mode introduction. |
as:code:* | Drafts of code you wrote in a lesson. |
as:session | Whether you are signed in, so pages load faster. Cleared when the tab closes. |
If you make an account
An account saves your progress and answers across devices. It is the same account on the website and in both apps.
| Kept | Why |
|---|---|
| Your email address | How you sign in and how we reach you. We also keep a normalised form of the address, so that different spellings of one Gmail mailbox count as one account. It is used for matching and nothing else. |
| A password | Only if you set one, and never in readable form. |
| Your Google or Apple link | Only if you sign in with Google or Apple: their id for your account and when it was linked, and for Apple a token used to unlink it when you delete the account. We never see your Google or Apple password. Deleted with the account. |
| A name, if you give one | Shown on your dashboard. Optional. |
| When you confirmed your age | When you ticked the box to say you are 18 or older. For a sign-in link, that is when you open it. Never a birth date. |
| Your sessions | Each browser or app you are signed in on, when it started and expires, and the browser or app name, so you can recognise it. |
| Lesson progress | Per lesson and example: the step you reached and when you finished. |
| Predictions | Per question: which step, which option you chose, whether it was right, and when you answered it, plus a short code made from the question’s wording and options. Answers you gave before you signed in are here only if you added them from your dashboard, the review queue page or the Buy Pro form in your account settings. This is what the review queue, which is part of Pro, reads to work out what is due, and so does the weekly review reminder described below this table. The readiness score, also part of Pro, is worked out from it too. |
| Your email choices | Whether you have turned on release notes and reminders, both off unless you do. |
| A log of the optional email we sent you | One row per optional email that actually went out, holding your address, the normalised form of it described above, your account id, which message it was and when. There are three such messages today: the one-time welcome, release notes if you turn them on, and the weekly review reminder if you turn Reminders on. It is the one row in this table that keeps your address after the account is deleted. |
| A record that a reminder was held back | One row each time an account was left out of the weekly review reminder: your account id, which message it was and when. It holds no address and none of your answers, and that it exists says only that the account would have been sent the reminder that week. It is deleted with the account. |
| Purchases, if you make one | What you bought, the amount, currency and billing country, when, and the payment reference. Card and bank details go to the payment company and never reach us. |
| What your account unlocks | Whether the account has Pro, where it came from, and when it was granted or taken back. |
| A sign-in code, for two minutes | Only when you sign in to an app with Google. Deleted as soon as it is used. |
The weekly review reminder is the third optional email, after the one-time welcome and release notes. It is off unless you turn on Reminders in settings, it goes to Pro accounts only, and it is sent at most once every seven days. It says how many questions are due for review and links to your review queue. It is never sent when nothing is due, and it names no lesson and says nothing else about your progress. The number is worked out from your answers and is written in the email, so the email service that sends it sees that number.
So that we can tell whether the reminder helps anyone come back, each week about a tenth of the accounts it would have gone to are left out of it on purpose. They are picked by a calculation on the account id and the week that looks at nothing you have done, so they are drawn afresh each week, and an account left out gets the row in the table above. We then compare the accounts that were sent it with the ones left out, by counting how many answered a question in the three days after it was, or would have been, sent, using the dates already on the answers. That is a count for each group. No result is kept against any account.
Progress from before you signed in stays in that browser. The predictions you answered as a guest are the one exception, and only if you ask: your dashboard, the review queue page and the Buy Pro form in your account settings offer to add them to your account, and nothing is uploaded until you press the button.
Your code and your input never reach us
Code you write and input you run a lesson on are processed in your browser and never sent to us. The first time you run Python, your browser downloads it from a public content delivery network, which sees your IP address the way any website does.
Cookies
Two first-party cookies, neither for advertising, on the website only:
as_sessionkeeps you signed in, for up to thirty days.as_hintholds your account id, address, name, whether the address is confirmed and your plan, so the page header can show them without asking the server every time. It lasts thirty days.
If analytics is turned on and you allow it, it adds two first-party cookies that last thirteen months and are deleted when you withdraw. The apps set no cookies.
Measurement, and how you are asked
No analytics service is on today. If one is turned on:
- In the EU, the EEA and the UK nothing loads until you agree.
- Global Privacy Control and Do Not Track count as a refusal.
- You can change your mind any time: .
- The identifier is random, and nothing that would be sent names your account.
What would be measured, once a service is turned on and you have allowed it:
- The pages you open, with nothing after the
?but a campaign tag such asutm_source, and the page you came from. - What you do in a lesson: lessons opened, predictions right or wrong, code runs and whether they passed, never the code. Searches by length and result count, never the words. Sign-up, sign-in and checkout steps. Reports by reason, never what you wrote.
- That you copied the link from the share card in your account settings, or sent it from your phone's share sheet, and which of the two - never who it went to. The link is the same for everyone and holds nothing about you.
- With each of those, the version of the site.
Server logs
Our server logs each request so we can fix problems: what was asked for, whether it worked, how long it took, and your account id if you were signed in. It never holds your IP address, your email address, a password, a cookie, or anything you typed. In a sign-in, password-reset, confirmation or unsubscribe link, the secret is left out of the line. Errors are logged with the secret in a sign-in, password-reset or unsubscribe link taken out. Old logs are dropped as new ones are written.
No log of IP addresses is kept today. If our hosting starts one, it will not record the address of the page asked for, it will be kept for about ninety days, and this policy will say so first.
Who else is involved
- An email service sends our email: sign-in links, confirmations, the welcome, release notes and the weekly review reminder if you turn them on, and receipts. It receives your address and the message, and each optional email carries a random id of our own record of that send, so a spam report can be matched to the message. It receives nothing else, with one exception: the reminder says how many questions are due for review, so they see that number.
- Google, only if you choose to sign in with it. Google tells us your address, your name and its id for your account.
- Apple, only if you choose Sign in with Apple. Apple tells us its id for your account, an address (yours, or a relay address if you chose Hide My Email) and, the first time, your name. When you delete the account, we tell Apple to forget the link.
- The payment company, if you buy Pro on the website. It receives your card or bank details, which never reach us. It is named at checkout and on your receipt. In the apps, the App Store or Google Play takes the payment.
- Our hosting provider, which runs the site and its database and keeps the backups.
- A content delivery network, only if you run Python, as your code and your input describes.
- Analytics services (Google Analytics and PostHog), only once turned on and only if you allow them. Not on today.
- A bot check on sign-up. It receives your IP address and technical details of your browser, never what you type.
- An error-reporting service receives details of unexpected errors: what failed, the page or endpoint, and what the page or server did just before, including what it wrote to its console. An address in a report has nothing after a question mark, the secret in a one-time link is taken out wherever it turns up, a line written to the console included, and an email address in an error message is replaced before the report is sent. It never receives your IP address or cookies.
Nobody else. Data is not sold, not shared for advertising, and not handed to anyone for their own purposes.
Keeping it, and deleting it
Progress and predictions are kept while the account exists. Sign-in links last fifteen minutes, password resets thirty, address confirmations twenty-four hours, and sessions thirty days, and each is deleted after it expires.
Deleting the account removes it and everything linked to it, with four deliberate exceptions named below. Deleting your account says how. An account switched off for two years is deleted the same way, with an email thirty days before. A sign-up never confirmed is deleted after thirty days, unless it holds a purchase.
The first thing that survives a deletion is the do-not-send list. If you unsubscribed, or an email to you bounced or was reported as spam, your address stays on it so we never email you again. It holds the address, a normalised form of it so that different spellings of one Gmail mailbox count as one - an unsubscribe from one spelling stops optional email to all of them - the reason it was added, and when it was added. If the reason was a spam report and the report names one of the optional messages in the log below, it also holds a pointer to that message's entry in the log, which says which message it was and when. For every other row the pointer is empty. Nothing else is in it. Write to us to have it removed.
The second is a record of anything you bought, if you did: the amount, currency, date and payment reference, kept for eight financial years as Indian tax and company law require. It no longer names you after the account is deleted.
The third is a log of the optional email we sent you, and like the do-not-send list it keeps your address in full. Each row holds your address, a normalised form of it so that different spellings of one Gmail mailbox count as one, the account id it was sent for, which message it was, and when. There are three such messages today: the one-time welcome, release notes if you turn them on, and the weekly review reminder if you turn Reminders on.
It is kept so that no address is sent too much, and the address, with the normalised form that counts every spelling of one Gmail mailbox together, is what a cap has to be enforced against. It holds nothing else about you: no progress (not even the number a reminder carried), no predictions and no message text. To have it removed, write to contact@algoscope.net.
The fourth is the entry recording when what you bought was switched on or off, if you had anything switched on. It no longer names you after the account is deleted, and is kept so a later refund or chargeback can be settled.
Backups of the database are made every night. Nightly copies are kept for about 14 days and each Sunday's copy for about 8 weeks, so a deleted account is gone from every copy within two months. The clean-up runs right after each night's copy is made and checked. Backups are kept on our own server, and no off-site copy is set up.
What the iOS app records
Without an account, what the app remembers stays on your device. Signed in, your progress is also saved to your account.
What it keeps on your device
Ten values, in the app's own storage. No other app can read them, and neither can we.
| Stored as | What it is for |
|---|---|
progress | The step you reached in each lesson, and which you finished. |
track | The learning track you are following. |
theme | Light or dark, if you chose one. |
motion | Full or reduced animation, if you chose one. |
lang | The language you read code listings in. |
sound | Whether the player makes a sound. |
analytics | Whether you turned on usage sharing. Off unless you do. |
predict-intro | Whether you have seen the predict mode introduction. |
predictions | Predict-mode answers you gave, the latest 200, so the review queue can find them. |
api-queue | Only while signed in: changes waiting to reach your account when you are back online. |
While you are signed in, your sign-in token and a note of your plan are kept encrypted on this device only. Signing out deletes both. The app does not collect your contacts, photos or location.
What it sends
Without an account, nothing about you. Signed in, the app sends our server your sign-in details, your progress and predictions, the settings actions you take, and a record of any Pro purchase, which we check with Apple.
Usage sharing is off unless you turn it on in Settings, and it is never linked to your account. Crash reports go to Google from release builds so crashes can be fixed: what failed, the device and the app version, with no account id. Neither is set up today, so the app sends nothing for either.
What the App Store privacy label declares
Linked to you, only if you sign in: your email address, name, account id, progress and any purchase. Not linked to you, for analytics: product interaction and a device identifier. No tracking and no advertising identifier.
What leaves the app, when you ask it to
- Further reading links open in your browser.
- Share this step sends a link to the lesson and step, nothing about you.
- Report a problem writes a message you send yourself, by email, on our public issue tracker or from your clipboard.
Turning it off, and getting rid of it
- Reset progress, in Settings under Data, clears progress on this device.
- Sign out deletes the token and the plan note. Your progress on the device stays.
- Delete account, in Settings under Data, deletes your account, as deleting your account describes.
- Deleting the app removes what it keeps. Sign out first to remove the sign-in token too.
What the Android app records
Without an account, what the app remembers stays on your device. Signed in, your progress is also saved to your account.
What it keeps on your device
Ten values, in the app's private storage. No other app can read them, and neither can we.
| Stored as | What it is for |
|---|---|
progress | The step you reached in each lesson, and which you finished. |
track | The learning track you are following. |
theme | Light or dark, if you chose one. |
motion | Full or reduced animation, if you chose one. |
lang | The language you read code listings in. |
sound | Whether the player makes a sound. |
analytics | Whether you turned on usage sharing. Off unless you do. |
predict-intro | Whether you have seen the predict mode introduction. |
predictions | Predict-mode answers you gave, the latest 200, so the review queue can find them. |
api-queue | Only while signed in: changes waiting to reach your account when you are back online. |
While you are signed in, your sign-in token and a note of your plan are kept encrypted on this device. Signing out deletes both. The app does not collect your contacts, photos or location.
What it sends
Without an account, nothing about you. Signed in, the app sends our server your sign-in details, your progress and predictions, the settings actions you take, and a record of any Pro purchase, which we check with Google Play.
Usage sharing is off unless you turn it on in Settings, and it is never linked to your account. Crash reports go to Google from release builds so crashes can be fixed: what failed, the device and the app version, with no account id. Neither is set up today, so the app sends nothing for either.
Permissions, and the advertising identifier
Two permissions: internet access, for your account, and Google Play billing, to buy Pro. The app cannot read the advertising identifier, and has no ads.
Android's own backup
Android can back up the app's settings and progress to your Google account. Your sign-in token is never backed up. You can turn this off in your system settings.
What leaves the app, when you ask it to
- Further reading links open in your browser.
- Share this step sends a link to the lesson and step, nothing about you.
- Report a problem writes a message you send yourself, by email, on our public issue tracker or from your clipboard.
Turning it off, and getting rid of it
- Reset progress, in Settings under Data, clears progress on this device.
- Sign out deletes the token and the plan note. Your progress on the device stays.
- Delete account, in Settings under Data, deletes your account, as deleting your account describes.
- Clearing the app's storage, or uninstalling it, removes everything it keeps.
What is true of all three
Four things do not differ by platform.
Who is responsible, and where to complain
The controller is NUB LABS PRIVATE LIMITED, trading as AlgoScope. Its postal address is under contact. Questions and grievances go to contact@algoscope.net, and you will get an answer within 30 days. In the EU or UK you can also complain to your data protection authority.
Children
Accounts and purchases are for people aged 18 and over, as the terms say. Nothing about a reader without an account is collected at all. If you believe someone under 18 has made an account, write to contact@algoscope.net and it will be removed.
Your rights
You can ask for a copy of your data, correct it, delete it, object to how it is used, or withdraw consent. In settings you can download a file of what your account holds, correct your name and address, and delete the account. For anything else write to contact@algoscope.net, and you will get an answer within 30 days.
The file holds your account, sessions, sign-in links, progress, predictions, email choices, which optional emails were sent to the account and when, the times a reminder was held back from it, and purchases. It leaves out passwords and tokens. It does not repeat the address and the normalised form of it that each row of the log of optional email holds. Ask for the log as it is kept and you will be sent it.
Changes
Before we collect anything new, this policy changes first, with a new date. The current version is always at this address.
Refunds: 14 days, no questions asked
Last updated 21 October 2026
This is the refund policy of NUB LABS PRIVATE LIMITED, trading as AlgoScope for AlgoScope Pro, a one-time purchase. Everything free stays free without it.
How to ask
Email contact@algoscope.net within 14 days of buying. No reason needed. You get back what you paid, in the currency you paid.
What happens to your account
Pro is removed from your account when the refund is issued. Your account, progress and answers stay.
Bought in an app
Purchases in the iOS or Android app are refunded by Apple or Google under their own policies. Ask Apple at reportaproblem.apple.com or Google in your Play Store order history. Not sure which? Email us.
Bought on the web
For every purchase made on this site, the seller of record is NUB LABS PRIVATE LIMITED, trading as AlgoScope. The payment company named at checkout and on your receipt only processes the payment.
Deleting your account
Last updated 21 October 2026
Delete it yourself in settings, or in Settings in either app. It is immediate and cannot be undone.
It removes your account, email address, name, progress, predictions, sessions and email choices. Up to four things can outlive it. Two are anonymous: the record of a purchase, which tax law requires, and when Pro was switched on or off. Two keep your address: the do-not-send list, if you ever unsubscribed, and the log of optional emails we sent you. Backups still hold a copy until they are deleted, within two months. Keeping it, and deleting it has the full list.
To keep your progress but stop all optional email, switch the account off instead. Signing in turns it back on. An account left switched off is deleted eventually, with thirty days' notice by email.
Step-by-step instructions, including what to do if you cannot sign in, are on Deleting your account. Data an app keeps on your device is cleared in the app.
Contact
Last updated 21 October 2026
- Email
Questions, account problems and requests about your data. Data requests are answered within 30 days.
contact@algoscope.net - Report a mistake in a lesson
Press Report in the player. It fills in the lesson, the step and your input. Add what you expected to happen.
contact@algoscope.net
Postal address
NUB LABS PRIVATE LIMITED, trading as AlgoScope7 Janta SocietyNr. Alabhais Bhatha, Moghi BagJagnath PlotRajkot, Gujarat 360001IndiaReporting by email
- The page address, which names the lesson and the example.
- The step number, if the problem is at one step.
- What you expected, and what happened instead.
- Your input, if you ran your own.