Privacy Policy

Last updated: 29 August 2026

On this page 1. Who we are 2. What we collect, and why 3. What we deliberately do not collect 4. Cookies and browser storage 5. Who we share data with 6. How long we keep it 7. Your rights 8. Security 9. Children 10. Changes and contact

1. Who we are

Java Coding Hub is an online learning site for Java, Spring Boot and related technologies, operated from India. In this policy “we” and “us” mean the operator of javacodinghub.com, and “you” means anyone who visits it or holds an account.

For data-protection purposes we are the controller of the personal data described below. You can reach us at arulraj@javacodinghub.com or through the contact form.

2. What we collect, and why

We collect as little as the site can function with. Most of the site — reading topics and lessons, browsing the learning tracks, using the free developer tools — works without an account and without you telling us anything.

The online Java compiler is the exception, and it is worth stating plainly. Pressing Run has always sent the code in the editor to our server, because that is where it is compiled and run. Since August 2026 we also keep a copy of what was run, so we can see what people actually try and cover it in the lessons. Details and retention are in the table below and in section 6. If you would rather it were not kept, do not paste anything into the compiler you would not want us to read.

WhatWhenWhy
Email address and passwordWhen you create an account To identify your account and let you sign in. Passwords are stored only as a one-way hash and cannot be read back by us.
Purchase records — amount, currency, what was bought, order and payment references, statusWhen you buy run tokens, PRO access or a premium project To give you what you paid for, to show your purchase history, and to meet tax and accounting obligations.
Unconfirmed checkoutsWhen a payment is started but not completed So that a payment interrupted mid-flow can be traced and put right rather than disappearing.
Messages you send us — your name, email address and the message itself When you use the contact form or the help panel To answer you, and to keep a record of the exchange.
Country, derived from your IP addressOn page views To count visits by country and to quote prices in the right currency. See section 3 for what happens to the address itself.
Sandbox session recordsWhen you run a live app To meter token use, enforce session limits and keep the service running.
Text you press Share on in the Difference Checker Only when you press Share on /tools-diff-checker.html, and only after the confirmation box tells you what it will do To put the two sides somewhere a shared link can reach them — a link other people can open has to have something on the other end of it. Comparing text does NOT send it anywhere; only Share does. Up to 256 KB a side, deleted after 24 hours — 7 days if you were signed in as a PRO member when you created the link — and nothing connects it to you beyond a one-way hash of your address used to stop one visitor filling the table. Pressing Explain instead sends the two sides to our AI provider to be described; that is not stored by us.
The code you run in the online Java compiler Each time you press Run on the online compiler To see what people actually try to compile, so the lessons and examples can cover it. We keep up to the first 20,000 characters. It carries your username only if you were signed in; otherwise nothing connects it to you. Only we can read it, and it is deleted after 60 days.
Which tool button you pressed, and how long after the page opened When you use one of the free developer tools, or sign in or sign up To see which tools are used and whether they are quick to get started with. We record the page, the button and the timing — not what you typed into it, with the compiler above as the one exception. It carries your username only if you were signed in.

3. What we deliberately do not collect

We do not store your IP address. When you view a page, your address is used once to look up the country it belongs to and is then discarded. What we keep is a counter — for example “14 views of the Learn page from India”. Nothing links a page view back to you.

We also do not collect or store:

  • Card, UPI or bank details. These are entered on RazorPay's own checkout and never reach our servers. We receive only a confirmation that a payment succeeded, and a reference number.
  • A per-visitor tracking identifier. We do not set a cookie to follow you between visits or across pages.
  • Behavioural profiles. We do not build a profile of you from your reading, and we do not sell or rent personal data to anyone, ever. We do keep the tool-button and compiler records described in section 2; where you were signed in those carry your username, so we have stated them there rather than claiming a blanket that would not be true.

4. Cookies and browser storage

We do not use cookies for logging you in. Your session is held in your browser's local storage, together with a few practical values:

  • Your sign-in token, so you stay signed in. Cleared when you sign out.
  • Your lesson progress, which is why progress is per-browser and does not follow you to another device.
  • Cached feature switches, so the page does not flicker while it asks the server what is enabled.

You can clear all of it at any time through your browser settings. Doing so signs you out and resets locally-stored lesson progress; it does not affect your account, purchases, tokens or PRO access, which live on our servers.

Advertising cookies

We show advertisements supplied by Google AdSense. Google and its partners may set their own cookies and use them to show and measure ads, including personalised ads based on your prior browsing. That happens under Google's own policies, not ours. You can review and turn off ad personalisation at Google My Ad Center, and read how Google uses data from sites that use its services at policies.google.com/technologies/partner-sites.

5. Who we share data with

Only the services needed to run the site, and only what each needs:

ServiceWhat it receivesWhat for
RazorPayYour payment details, which you enter directly with them, plus the order amount and referenceTo take payment and issue refunds
Google AdSenseWhatever your browser sends when an ad loads, under Google's own policiesTo display advertising
ip-api.comYour IP address, at the moment of a page view To resolve it to a country. We do not store the address afterwards; the lookup service processes it under its own terms.
Our email providerYour email address and the content of the message being sentTo deliver sign-in codes, receipts and replies

We may also disclose information where we are legally required to, or to establish or defend a legal claim.

6. How long we keep it

  • Account data — for as long as your account exists.
  • Purchase records — retained after an account closes, because tax and accounting rules require it.
  • Unconfirmed checkouts — removed automatically after seven days.
  • Messages you send us — kept while they are relevant to supporting you, then deleted.
  • Country view counts — kept indefinitely, but they are totals and contain nothing that identifies a person.
  • Text you shared from the Difference Checker — deleted 24 hours after you created the link, automatically, or 7 days if you were signed in as a PRO member at the time. The window is fixed when the link is made and does not change afterwards: letting a subscription starting or lapsing move the deletion date of text already stored would mean the promise made when you pressed the button was not the one being kept. The link stops working at that moment whether or not the row has been swept yet. Comparing text in that tool stores nothing at all; this covers only what you pressed Share on.
  • Code you ran in the online compiler — the code itself is deleted 60 days after the run, automatically and without you having to ask. What survives is the bare fact that a run happened and how long it took you to start it, with no code attached.
  • Tool-button records — the page, the button and the timing are kept for about 13 months, then deleted. Thirteen rather than twelve so one August can be compared with the last.

7. Your rights

Depending on where you live, you have rights over your personal data — under the Digital Personal Data Protection Act, 2023 if you are in India, and under the GDPR if you are in the UK or European Economic Area. In either case we apply the following to everyone:

  • Access — ask us for a copy of what we hold about you.
  • Correction — have anything inaccurate fixed.
  • Deletion — ask us to delete your account and the personal data attached to it. Purchase records are the exception, as above.
  • Objection and restriction — object to a particular use of your data.
  • Portability — receive your data in a machine-readable form.
  • Complaint — raise the matter with your data-protection authority. In India that is the Data Protection Board; in the EEA or UK, your national regulator.

Email arulraj@javacodinghub.com from the address on your account and we will respond within 30 days.

Where you are in the EEA or UK, our lawful bases are: contract for your account and purchases, legal obligation for accounting records, and legitimate interests for keeping the service secure, counting visits by country, and understanding how the free tools and the online compiler are used so they can be improved.

8. Security

The site is served over HTTPS. Passwords are stored as one-way hashes. Payment verification is checked against the payment provider server-side before anything is credited, and administrator accounts require a second factor to sign in. No system is perfectly secure, but we do not keep the two things most worth stealing — card details and IP addresses.

9. Children

This site is not directed at children under 13, and we do not knowingly collect their personal data. If you believe a child has given us personal data, contact us and we will remove it. Where local law sets a higher age for consent, that age applies.

10. Changes and contact

If this policy changes materially we will update the date at the top of the page and, for account holders, say so by email. Continuing to use the site after a change means you accept the updated policy.

Questions about this policy, or a request about your data: arulraj@javacodinghub.com or the contact form.

See also our Terms of Service and Refund & Cancellation Policy.