Privacy Policy — Job Posting Analyzer

Last updated: July 21, 2026

Job Posting Analyzer, developed by Konstantin Ippolitov, is a Chrome extension ("the extension") with a companion web application ("the web app", together "the service") that analyze job postings for work arrangement, salary, seniority, tech stack, and fit. Anyone with a verified-email Google account can sign up and use either surface immediately — a free tier is available to everyone, and an optional paid Premium tier raises your monthly limits. Both surfaces sign in with the same Google account and read and write the same account data; there is no separate copy, and nothing you do on one surface requires re-entering data on the other. This page explains what data the service handles, how it's used, and what choices you have. See also the Terms of Service, including the terms of sale for Premium.

Sign-in and account creation

When you sign in — on the extension via chrome.identity.launchWebAuthFlow, or on the web app via Google Identity Services — Google issues an ID token containing your email address and basic profile information. That token accompanies every request to our backend, which verifies it and — the first time you sign in, on either surface — creates an account for you automatically on the free tier. No invitation or approval step is required; a verified email address is the only requirement. Your email address is stored server-side as the key for your account data. Neither surface ever sees or stores your Google password.

What the service accesses

The extension only reads the page you're actively viewing, and only after you click its toolbar icon (via Chrome's activeTab permission) — it never reads pages in the background and never requests broad access to your browsing. The web app has no equivalent page-reading capability; instead, on the web app only, you may choose to upload a document (see "Document upload" below).

When you analyze a page in the extension, it reads:

Document upload (web app only)

On the web app, instead of analyzing a browser tab, you can upload a Word (.docx) or PDF file (up to 10 MB) containing a job description. The file is sent to our backend, which extracts its text server-side and analyzes it the same way as a page. The uploaded file itself is not retained after the analysis completes — only the resulting structured analysis and the document's filename are stored, the same as any other saved posting. Unreadable, password-protected, image-only, or unsupported files are rejected before any part of your monthly allowance is used.

How that data is used

The page content or uploaded-document text (and your candidate profile, if configured) is sent to a backend service (an Azure Function that we operate), which calls Azure OpenAI to extract structured fields — work arrangement, salary, seniority, tech stack — and, if a profile is present, a fit score with a short rationale. This data is processed only to produce that analysis and to provide the sync features described below — not advertising, not profiling, not resale.

What is stored, and where

Payments (Premium tier)

Premium ($5/month) is optional and processed entirely by Paddle.com Market Limited ("Paddle"), who acts as merchant of record for the transaction — Paddle, not us, collects your payment details, calculates and remits any applicable sales tax or VAT, and issues your invoice/receipt. We never see or store your card number or other payment credentials. When you subscribe, Paddle notifies our backend that your account should be upgraded; we store only the subscription status, renewal/end date, and an internal customer/subscription identifier Paddle assigns, so we can display your plan and let you manage or cancel it. See Paddle's Privacy Policy for how they handle payment data.

Third parties

Three third-party processors are involved: Microsoft Azure (backend hosting and storage for both surfaces, web app static hosting on Azure Static Web Apps, and the Azure OpenAI Service, which processes content under Microsoft's enterprise data handling commitments — Azure OpenAI does not use your data to train models), Google (sign-in), and, only if you choose to subscribe, Paddle (payment processing, described above). We do not use advertising networks, analytics trackers, or any service that profiles or resells your data. We do not sell your data to anyone, under any circumstances, and we do not use it to determine creditworthiness or for lending purposes.

Permissions the extension requests

The web app is an ordinary website — it requests no browser extension permissions. It uses standard web sign-in (Google Identity Services) and asks for file access only when you explicitly choose a document to upload.

Your choices and control over your data

These choices apply the same way regardless of which surface you use — the extension and the web app read and write one shared account.

Children's privacy

The extension is not directed at children under 13 and does not knowingly collect data from them.

Changes to this policy

If this policy changes, the updated version will be posted at this same URL with a new "Last updated" date.

Contact

Questions or requests can be sent to kippolitov@gmail.com or filed as an issue at github.com/kippolitov/job-posting-analyzer/issues.