Privacy policy

This page is a draft under legal review.

This policy explains what FresherHub collects, why, who else handles it, and what you can do about it. It is written to match how the product works today, and it is the notice we give you under India's Digital Personal Data Protection Act, 2023 and the Digital Personal Data Protection Rules, 2025.

What happens to your resume

  • Your resume (PDF or DOCX, up to 10 MB) goes from your browser straight into a private storage bucket. It is not public, and it is stored under a random ID rather than your file name.
  • To read it, we send it to our AI provider, OpenRouter. A PDF is sent as the file itself; for a DOCX we extract the text first and send the text. The AI turns it into structured sections (education, projects, skills and so on).
  • We keep the structured result in our database. Anything the AI returns that does not actually appear in your resume is thrown away. If the AI is unavailable, we read the resume on our own servers instead.
  • Other users cannot see your resume. It appears on your public portfolio only if you publish a portfolio and turn on the resume option, which is off by default. A small number of authorised FresherHub staff can view it when needed to support you or fix a problem.
  • You can delete a resume from the Resume page, or your whole account from Account → Delete my account. Deleting your account deletes your resume files and the data built from them (details below).

Who we are

FresherHub ("we", "us") runs the website at fresherhub.app. FresherHub is operated by Shahid Kamal, trading as FresherHub (a sole proprietorship), based in Hyderabad, Telangana, India. We decide why and how your personal data is processed, so we are the "Data Fiduciary" under the Digital Personal Data Protection Act, 2023.

For anything in this policy, write to support@fresherhub.app. Our grievance officer is described in "Grievances" below.

What we collect and why

Your GitHub sign-in. FresherHub only lets you sign in with GitHub. We ask GitHub for two permissions: read:user (your public profile) and user:email (your email address). We do not ask for access to private repositories. From GitHub we receive your GitHub user ID, username, name, email and profile picture, which we use to create and identify your account.

Your GitHub access token. GitHub gives us a token so we can read your public repositories when you ask us to analyse them. We store it encrypted, it is never sent to your browser, and we delete it when you delete your account.

Your public repositories. When you run a GitHub analysis we read the public repositories you own: repository details, README, file list and some files, to find evidence of your skills. We save a snapshot of what we found.

Your resume. See the summary above. We also keep the original file name, type, size and a fingerprint (hash) of the file, and the resume versions you create or export.

Your career profile and goals. What you tell us in the assessment and profile: target role, career stage, graduation year, education, experience, skills, projects, preferred locations and work type, and expected salary if you enter it.

LinkedIn. We do not connect to LinkedIn, log in to it or scrape it. If you use the LinkedIn feature, you paste your profile link and the text of your sections (headline, about, experience and so on). We check that the link looks like a LinkedIn profile link, store what you pasted, and use it to suggest improvements.

What we generate. Evidence items, readiness assessments, action plans, progress history and your portfolio settings.

Payments. If you buy Placement Sprint, Razorpay processes the payment. We receive and keep the order and payment records Razorpay sends us: order and payment IDs, amount, status, and the rest of Razorpay's payment notification, which can include the email and phone number entered at checkout and the payment method used. We never see your card number, CVV or UPI PIN.

Usage and technical data. Pages viewed and buttons clicked (see "Cookies and browser storage"), and operational logs (see "Logs"). Your IP address and browser details reach our hosting and network providers with every request; we use the IP address in memory to limit abuse and do not store it in our database.

Messages you send us. If you email us, we keep the email and our reply so we can help you and keep a record of requests and complaints.

Why we use your data and on what basis

We use your personal data only to:

  • create your account and keep you signed in;
  • read your resume, GitHub and LinkedIn text, score your readiness for the role you picked, and build your action plan;
  • run the AI features you use;
  • publish your portfolio, if you choose to;
  • take payment for Placement Sprint and keep payment records;
  • keep the service secure, fix errors and understand how it is used;
  • answer your messages, requests and complaints;
  • meet our legal obligations.

We process your data on the basis of the consent you give when you sign in and use each feature, and, where the law allows it without consent, for legitimate uses such as meeting a legal obligation. You can withdraw consent at any time (see "Your rights"); this does not affect processing already done.

Age

FresherHub is only for people aged 18 or over. Please do not sign in or use FresherHub if you are under 18. If we learn that an account belongs to someone under 18, we will close it and delete its data.

How we use AI

We use AI for four things, all through our AI provider, OpenRouter:

  • reading your resume into structured sections;
  • suggesting rewrites of resume bullet points;
  • suggesting LinkedIn headline and About text from what you pasted;
  • writing a plain-language explanation of your readiness result.

The content needed for each task (for example your resume, or the LinkedIn text you pasted) is sent to OpenRouter, which passes it to the AI model that does the work. OpenRouter and the model providers behind it are outside India and handle the content under their own terms: they may retain your prompts and the content you send, and may use it, including to train or improve their models. We may switch providers at any time.

AI never decides your readiness score, your gaps or your blockers. Those come from fixed rules explained on How FresherHub works. For each AI request we keep a record of the task, model, timing, token counts and a fingerprint of the input, not the content itself.

Who else handles your data

We do not sell your data or share it for advertising. We share it only with the service providers below, which process it for us to run FresherHub, and only as much as each one needs:

Service providers that process personal data
ProviderPurposeData involvedLocation
GitHub (GitHub, Inc.)Sign-in, and reading your public repositories when you run a GitHub analysisGitHub user ID, username, name, email, profile picture; public repository contentsUnited States
Vercel (Vercel Inc.)Hosting the fresherhub.app website and its sign-in and API proxy functionsRequests passing through the website, including IP address, session cookie and the data you submitUnited States company; global network. Function region: Washington, D.C., USA (iad1)
Oracle Cloud Infrastructure (Oracle)Servers that run the FresherHub API, background jobs and our MongoDB databaseAll account and product data held in our databaseIndia (Hyderabad region, ap-hyderabad-1)
Cloudflare (Cloudflare, Inc.)DNS, secure proxy for api.fresherhub.app, and R2 private file storage for resumes and exported PDFsRequests to our API, including IP address; uploaded resume files and exported PDFsUnited States company; global network. R2 storage: location chosen automatically by Cloudflare (no jurisdiction restriction set)
OpenRouter (OpenRouter, Inc.)Routes our AI requests to AI model providers to read resumes, suggest resume and LinkedIn wording, and explain resultsResume files (PDF) or resume text (DOCX), resume bullet points, LinkedIn text you paste, and your readiness result for explanationUnited States; the model providers behind it may process the content elsewhere and may retain it
Razorpay (Razorpay Software Private Limited)Payment processing for Placement SprintOrder and payment details, and what you enter in Razorpay checkout (such as email, phone and payment method)India
Axiom (Axiom, Inc.)Storing our operational logs and first-party usage analyticsInternal FresherHub user ID, events, pages viewed, timings and status; no resume contents or tokensUnited States company. Data region: United States

Other users see only what you choose to publish on your portfolio. We may also disclose data where the law requires it, for example to a court or a government authority with a lawful request.

Data stored or processed outside India

Several of the providers above are based outside India, mainly in the United States and the European Union, so your data may be transferred to and processed in those countries. AI requests may also be handled wherever the chosen model is hosted, which can include other countries. We only transfer personal data to countries the Government of India has not restricted under the Digital Personal Data Protection Act, 2023, and we will stop if a country is restricted.

Your public portfolio

A portfolio is a draft until you publish it, and only published portfolios can be seen by others. When you publish, your email, phone number, expected salary, readiness scores, action items, assessment history and resume download are hidden unless you turn them on. Your GitHub username is shown by default and you can hide it. Your GitHub token is never shown.

Cookies and browser storage

  • Sign-in cookies. When you sign in we set a session cookie that keeps you logged in, plus short-lived cookies used during the GitHub sign-in step for security. These are needed for the site to work.
  • Browser storage. The app keeps some screen state in your browser's local and session storage so pages load the way you left them, for example the role you picked before signing in. It stays on your device.
  • Checkout. When you open the payment window, Razorpay's checkout runs on the page and may use its own cookies, under Razorpay's policies.

We do not use advertising cookies or third-party analytics or tracking tools.

We keep simple first-party usage analytics, collected through our own servers rather than a third-party script: the pages you view (without query strings), the website that referred you (its name only), campaign UTM tags in the link you arrived from, and which main buttons are clicked. If you are signed in these are linked to your internal FresherHub user ID. They are stored with our logging provider (Axiom), which processes them on our behalf for 30 days; they are not shared with advertisers or analytics companies, and no tracking cookie is set. The first campaign tag is kept in your browser's session storage until you close the tab. If your browser sends Do Not Track or Global Privacy Control, we don't send these browser events.

Logs

Our servers log events such as sign-ins, uploads, analyses, payments and errors, with your internal FresherHub user ID, timings and status, so we can run and fix the service. We do not log resume contents, uploaded files, access tokens, session cookies, payment secrets or full AI prompts and responses. Logs and usage analytics in Axiom are kept for 30 days and then deleted. Our hosting and network providers also keep their own short-lived request logs under their terms.

How we protect your data

  • All traffic to FresherHub is encrypted in transit (HTTPS).
  • Your GitHub access token is encrypted in our database (AES-256-GCM) and never leaves our servers.
  • Resume files sit in a private storage bucket. Uploads and downloads use signed links that expire within minutes.
  • Every request for your data is checked against your account, so other users cannot read it. Staff access is limited to what is needed to support you and run the service.

If a breach happens. If a personal data breach affects you, we will tell you without delay, with what happened, the likely impact and what you can do, and we will report it to the Data Protection Board of India, as the Digital Personal Data Protection Rules, 2025 require.

How long we keep data

We keep your data while your account is active. You can delete an individual resume at any time from the Resume page; that removes the resume record, the uploaded file, its parsed content and any exported PDFs. Details already added to your career profile, and evidence found in the resume, are kept until you delete your account.

When you delete your account (Account → Delete my account, or by asking us):

  • your account is marked for deletion straight away and you can no longer use it;
  • a background job then deletes your resume files and your career profile, resumes, GitHub and LinkedIn data, evidence, assessments, action plans, portfolio, projects, progress history and AI request records, and removes your GitHub token, email, name and profile picture;
  • we keep a minimal record of the deleted account (GitHub user ID and username, status and deletion date) and your payment records, including Razorpay's payment notifications, which we may need for tax, accounting and legal reasons. We keep these for 8 years.

We do not currently delete inactive accounts automatically. Logs are deleted after 30 days. We do not yet keep database backups; once we do, deleted data may stay in a backup for up to 30 days before the backup is replaced.

Your rights

Depending on the law that applies to you, including India's Digital Personal Data Protection Act, 2023, you can ask us to:

  • tell you what personal data we hold about you and how we use it;
  • correct, complete or update it;
  • delete it, including deleting your account;
  • withdraw consent you have given (this may stop parts of the service working);
  • nominate another person to exercise these rights on your behalf;
  • have your grievances about our handling of your data resolved.

You can correct most of your profile, and delete resumes or your whole account, yourself in the app. Deleting your account is also how you withdraw your consent in full. For anything else, write to support@fresherhub.app from the email on your GitHub account. We may need to confirm the request comes from you. We acknowledge within 48 hours and resolve it within 30 days.

Grievances

Grievance Officer: Shahid Kamal (proprietor), support@fresherhub.app. Please put "Grievance" in the subject. We acknowledge within 48 hours and resolve it within 30 days.

If you are not satisfied with our response, you can complain to the Data Protection Board of India. See also our contact page.

Changes to this policy

When we change this policy we will update the date at the top of this page.