Legal

Privacy Policy

Kernel DevTools is built on a simple principle: your data belongs to you. This policy explains exactly what we collect — and what we don't.

Last updated: November 1, 2026

What we collect

Almost nothing. Kernel DevTools does not collect, transmit, or sell any personal data. There is no analytics SDK, no crash reporter, no A/B testing framework, and no usage tracking of any kind.

The only exception is the optional unlock flow described below, which stores an anonymous token on our server for up to 24 hours.

What is stored on your device

The following data is stored locally on your device only using chrome.storage.local and is never transmitted anywhere except where noted:

  • Mock API rules — URL patterns and response definitions you create in the Mock tab. Stored locally; never sent to any server.
  • API collections — request collections and environment variables you build in the API Tester tab. Stored locally only.
  • Device ID — a randomly generated UUID created the first time you use the extension. It is not linked to your identity and is used only to associate an unlock token with your device during the unlock flow.
  • Unlock state — if you claim an unlock, the expiry timestamp is stored locally so the extension knows your unlock is active without making repeated server requests.
  • Daily export count — a counter (reset each day) tracking how many exports you have used. Stored locally only.

All other data displayed in the panel (console logs, network requests, cookies, localStorage, DOM snapshots) is read directly from the locally inspected browser tab and shown only to you. It is never stored persistently or transmitted anywhere.

Unlock flow

Some advanced features can be unlocked free for 24 hours on kerneltools.dev/unlock. That page shows no ads. When you choose to unlock a feature:

  • The extension generates a one-time random token (UUID) and opens kerneltools.dev/unlock in a new tab, passing the token, your device ID, and the feature name in the URL.
  • Before you can claim, the page runs a Cloudflare Turnstile check to confirm a person, not a script, is claiming. Turnstile is provided by Cloudflare and processes your browser's signals and IP address to make that decision; we receive only a pass/fail result.
  • When you click "Claim 24h unlock", that token is written to our server (Cloudflare D1) with a 24-hour expiry. Only the token, device ID, feature name, and expiry timestamp are stored — no name, email, or IP address is retained.
  • The extension polls our server to detect when the token has been claimed, then stores the unlock expiry locally and closes the polling loop.
  • Tokens are automatically deleted after expiry. You are never required to use this feature.

Network requests made by the extension

Kernel DevTools makes network requests only when you explicitly trigger a tool that requires it:

  • Certificate Inspector — queries crt.sh and hstspreload.org with the hostname you enter to fetch public certificate data.
  • DNS Leak Checker — queries api.ipify.org to retrieve your public IP address for comparison.
  • Tokens — tokens, cookies, secrets and keys you paste are decoded, verified, signed and encrypted inside the panel and are never stored or sent. Only if you press Fetch key does the tab request the issuer's public key set from the address shown (for example /.well-known/jwks.json); the token itself is not included in that request.
  • Unlock flow — when you choose to unlock a feature, the extension polls kerneltools.dev/api/check-unlock until the token is claimed, then stops. No requests are made in the background when you are not using the unlock flow.

No other background network requests are made.

PII Leaks audit

The PII Leaks tab is off until you start it for a specific tab. While it runs, it checks that page's outgoing requests, beacons, image URLs, WebSocket messages and storage writes for the test values you enter and for values typed into email, phone, password, card, Aadhaar and PAN fields. The test values and typed values are matched inside your browser and are never sent to kerneltools.dev or anywhere else. Findings show only a masked sample (for example ca•••@example.com) and the destination without its query string, and they stay in the extension until you clear them, close the tab, or end the browser session. Scripts on the audited page can see the test values while the audit runs, so use fake values.

Browser permissions used by the extension

The extension requests the following Chrome permissions. Each is used only for the purpose stated below:

  • host permissions (<all_urls>) — Required to intercept and inspect network requests, response headers, cookies, and security policies on any webpage you are actively debugging. Access is limited to the tab open in the DevTools panel and is never used for background data collection.
  • scripting — The chrome.scripting API injects a lightweight content bridge into the inspected tab. This bridge relays console messages, DOM mutations, WebSocket frames, and storage change events to the DevTools panel in real time. No code is injected into tabs you are not actively inspecting.
  • storage — chrome.storage.local stores mock API rules, unlock state, layout preferences, and export counters locally on your device. See "What is stored on your device" above for the full list.
  • tabs — The chrome.tabs API is used to identify the active tab being inspected, retrieve its URL for the Network and Security panels, and reset panel state when you navigate to a new page.
  • alarms — chrome.alarms fires a periodic check to verify whether an unlock token has expired. This keeps the panel badge accurate without requiring a page reload. No alarm data is transmitted externally.
  • remote code execution (inspectedWindow.eval) — The extension uses chrome.devtools.inspectedWindow.eval(), the standard Chrome DevTools API, to read DOM state, retrieve storage values, and relay console output from the inspected page's JavaScript context. All evaluated strings are generated locally within the extension; no code is fetched from any remote server.

Kernel Ludo (kerneltools.dev/ludo)

Kernel Ludo is a website feature, not part of the extension — everything above this section describes the extension itself, which Kernel Ludo has no access to and never touches. Playing a live multiplayer game means real-time data has to leave your device by design, so this section is separate and explicit about exactly what that involves.

  • What's sent — the display name you're shown with, and your connection's IP address (inherent to any live connection, not something we choose to log beyond what Cloudflare's own infrastructure sees to route the connection). No account, email, or persistent identity is created or required.
  • What's stored — nothing durable. A room's state (who's connected, whose turn it is) lives only in that room's server memory for as long as the room is active, and is gone once everyone leaves or the room is closed. There is no database of past games, players, or room codes.
  • Voice chat — Kernel Ludo has optional voice chat between players in the same room, connected directly peer-to-peer (WebRTC) rather than routed through our server — our server only ever relays the connection-setup handshake, never the audio itself. This means each player's real IP address becomes visible to the other players they're in a room with, for as long as voice is connected — a standard characteristic of peer-to-peer voice/video, not something unique to how we've built this. Voice is off by default: it's only ever turned on by an explicit click, and you can mute your own mic at any time, or turn it off entirely by leaving the room.

Kernel Carrom (kerneltools.dev/carrom)

Local Carrom matches, computer opponents and tournament play run on your device. Completed tournament rounds and your chosen board style are saved in your browser’s local storage when available; unfinished local matches are not saved. Board style is a personal device preference and is not sent to other online players. This game loads no ads or advertising scripts.

Online Carrom is optional. Creating or joining a private room connects to our multiplayer service on ludo.kerneltools.dev. Your chosen display name, random seat identifier, room membership, shot actions and shared board/score state go to that service and are shown to the other room members as needed to play. The server validates turns and simulates the board. Cloudflare sees your IP address as part of providing the connection; the game does not share it directly with other players. Carrom has no voice chat, accounts or advertising integration.

Live rooms and private reconnect credentials are held in server memory, not a history database; server restarts or eviction can end a room. A fully disconnected room is kept for up to two minutes for reconnection, and explicitly leaving the last seat closes it immediately. Your tab keeps a room code, random seat id and private reconnect credential in session storage when available so a reload can resume your seat. Explicit Leave clears that credential on your device. Keep it private: anyone holding it can act as your seat. Only non-secret membership and gameplay state are broadcast to other players. A disconnected player’s turn is taken by the computer after the shared 45-second turn deadline.

PDF tools and PDF Editor (kerneltools.dev/pdf-tools)

Every PDF tool on kerneltools.dev — including merge, split, compress, convert, OCR, sign, redact, protect, and the PDF Editor — processes the files you select entirely in your browser tab. Your documents, images, page order, rotations, passwords, and notes are not uploaded to Kernel’s servers. Closing or refreshing the page clears the session unless you download the result.

OCR’s optional “Read handwriting” setting downloads a handwriting-recognition model (Microsoft TrOCR, about 64 MB) from Hugging Face the first time you turn it on, and your browser keeps it for later visits. Like any download, that request shows Hugging Face your IP address. Your pages and their text are never sent: the model runs in your browser tab.

The “Was this PDF edited?” checker (kerneltools.dev/pdf-edit-checker) also reads your PDF only in your browser. If the file is password-protected, the password you type stays in your browser tab too, and that page loads no ads or advertising scripts.

The same is true of the other utilities: the JSON formatter, the diff checker, the word counter, the image compressor, the QR code generator and reader, the color picker, the password generator, the UUID generator, the lorem ipsum generator, the timestamp converter, the regex tester, the Markdown editor and the code minifier. Passwords and IDs are created on your device and are never transmitted. The Markdown preview loads any web images your own text refers to from their addresses, as any web page would. Whatever you paste, type or open from a file, including images, is processed in your browser tab, is never sent to Kernel’s servers or stored, and those pages load no ads or advertising scripts.

The one exception is the PDF Editor’s optional “Process compatible replacements in source PDF” action. Only when you click it, the PDF and the text replacements you entered are uploaded to private storage so the edit can be applied on our server. The job is reachable only with an access token held by your browser tab, expires after 24 hours, and is then deleted automatically.

The multi-signer e-signature request (kerneltools.dev/sign-request) works differently: it stores the request title, each signer’s name and email, and each typed signature on our server, so every signer can open their private link. No document is uploaded and no emails are sent. A request is deleted automatically, with its signers and history, 30 days after it is completed or declined, or after 90 days without a signature while it is still waiting.

Case converter and text utilities (kerneltools.dev/case-converter, /utilities)

The Git Merge Comparison workspace (kerneltools.dev/git-merge-compare) sends the two PR URLs, optional baseline overrides and any optional GitHub token through the website API to the configured Git comparison service. The token is used for that job, is not included in reports or logs, and is not saved in browser storage. Temporary repository copies are removed when the worker finishes or is cancelled; results remain in service memory for up to 15 minutes after completion and are lost on restart. Clear or leave the page to request cancellation/deletion; interrupted requests can remain until the job timeout/expiry. Imported JSON reports are processed only in browser memory and are not uploaded. Downloaded reports may contain private code and repository metadata. The workspace loads no ads.

Text you paste into the case converter is converted in your browser tab. It is not sent to Kernel’s servers, stored, or saved between visits, and that page loads no ads or advertising scripts.

Search, recent and favourite tools. The site remembers which tools you opened last and which you starred, so it can list them in search and on the home page. These lists hold only page addresses, are kept in your browser’s local storage, are never sent to Kernel’s servers, and are erased with “Clear this list” on the home page.

Group Poll, Shared List and Event Invite (kerneltools.dev/group-poll, /shared-list, /event-invite) store what you and the people you share with type, so that everyone sees the same page. All of it (questions, options, list items, event details, names, votes and replies) is encrypted in your browser with a key that exists only in the link, so our server holds text it cannot read; it can see only how many entries there are and when they changed. Anyone with the link can read everything in it. It is deleted automatically 90 days after it was last used (30 if the organiser chooses), or at once when the organiser deletes it. Creating one is rate-limited by IP address like our other forms. Your browser keeps, in its local storage, the links you have opened, the name you typed and a random value that marks your own vote or reply as yours.

The Invitation Card Maker (kerneltools.dev/invitation-card-maker) draws the card inside your browser. The words and the photo you add are never sent to Kernel’s servers. If you tick “Keep these words on this device”, the words (never the photo) are kept in your browser’s local storage until you untick it. “Collect replies for this event” passes the event’s details to the Event Invite page in your browser’s memory; nothing is created or stored until you press Create there. The page loads no ads.

The Office ID Card Maker reads employee spreadsheets, photos, company logos and signature images in your browser. These files and generated cards are never uploaded, are not automatically saved in browser storage, and the page loads no ads. Downloaded company design files include branding and any company signature image, but exclude employee details and portraits. Closing or reloading the page clears unsaved work.

The Certificate Maker (kerneltools.dev/certificate-maker) and the QR code generator’s “Many at once” mode read the list you paste or choose (names, and whatever other columns it has) inside your browser to make the certificates or codes. The list, the logo and the files made from them are never sent to Kernel’s servers, nothing of them is kept in your browser’s storage, and these pages load no ads.

The Aadhaar and ID Masker (kerneltools.dev/aadhaar-masker) opens your photo or PDF, reads it and paints over the areas you approve entirely in your browser. The document, the numbers found on it and the masked copy are never sent to Kernel’s servers, nothing about them is kept in your browser’s storage, and the page loads no ads. Finding the numbers is a best guess, so check the result before you share it.

The Document Viewer (kerneltools.dev/document-viewer) opens and reads your file entirely in your browser. The file and what it says are never sent to Kernel’s servers, nothing in it can run code, and pictures or links in it that point to the internet are not loaded. If you install it as an app, your browser keeps a copy of the page’s own code so that it starts without a connection; that copy holds none of your documents. On Android, a file you share to the app is held on your device only for the moment it takes the page to open it, and is then removed. The page loads no ads.

The One-Time Secret Link (kerneltools.dev/secret-link) stores what you send (the text, and a file of up to 1 MB with its name) until it is opened once, destroyed by you, or its time runs out (1 hour, 1 day or 7 days, as you choose), whichever comes first; it is then deleted. It is encrypted in your browser with a key that exists only in the link, so our server holds text it cannot read and we cannot recover or inspect it. Whoever has the link can open it, once. Creating one is rate-limited by IP address like our other forms; opening one is not, and nothing about the reader is recorded. The page keeps nothing in your browser’s storage and loads no ads.

The Invoice Generator and Salary Slip Generator (kerneltools.dev/invoice-generator, /salary-slip-generator) build their PDFs inside your browser; names, addresses, GSTINs, PAN and pay figures are never sent to Kernel’s servers, and those pages load no ads. If you tick “Remember … on this device” or “Keep this draft on this device”, save a customer, item or employee, or keep a sales register of the invoices you download, that information (which can include names, addresses, GSTINs, PAN and pay figures) is kept in your browser’s local storage, on that device only, until you untick the box, remove the entry or choose “Forget everything saved on this device”. Do not use these on a shared computer.

The Resignation Letter Generator (/resignation-letter-generator) and Payroll Generator (/payroll-generator) process your employment details, dates and pay figures inside your browser and load no advertising. These form entries and generated PDFs are not uploaded. Copying a resignation letter places its text on your device clipboard. Drafts are kept in browser local storage only if you choose “Keep this draft on this device”; untick it or choose “Forget everything saved on this device” to delete the saved draft. Downloaded files and copied text remain under your control. Avoid saving drafts on a shared computer.

Payroll batch CSV files are read and mapped on your device; the original file and column mapping are not saved. Applied employee rows, pay rules and employer/month details can be saved as a separate batch draft only when you request it. The batch workspace’s “Forget saved batch on this device” control removes that draft. Payroll-register CSV and payslip ZIP downloads are generated locally; they contain employment and pay data and should be stored appropriately. Switching between single and batch payroll preserves unsaved entries for the current page visit.

The Resume Builder (kerneltools.dev/resume-builder) builds your resume, its score, the job-description match and the PDF and Word files inside your browser. Your contact details, work and education history and any job description you paste are never sent to Kernel’s servers, and the page loads no ads. The only thing it downloads when you make a PDF is a font file from this website. Your resumes are kept in your browser’s local storage only if you tick “Keep my resumes on this device”, until you untick it or choose “Forget everything saved on this device”. “Export file” saves a resume as a file on your device; “Copy text” places it on your clipboard. Do not keep resumes on a shared computer.

The Resume Checker (kerneltools.dev/resume-checker) opens the PDF or Word resume you choose inside your browser, reads its text (with on-device OCR only if you ask, for a scanned PDF), scores it and compares it with any job description you paste. The file, its text and the job description are never sent to Kernel’s servers or saved, and the page loads no ads. “Fix this in the builder” passes what was read to the Resume Builder in this browser tab’s memory only; it is kept there only if you then choose to keep your resumes on this device.

The Cover Letter Generator (kerneltools.dev/cover-letter-generator) writes your letter and its PDF inside your browser and loads no ads. What you type is never sent to Kernel’s servers. “Write a cover letter” in the Resume Builder passes your resume to it in this browser tab’s memory only. The only thing it downloads when you make a PDF is a font file from this website. A draft is kept in your browser’s local storage only if you choose “Keep this draft on this device”; “Copy letter text” places the letter on your clipboard.

The Passport Size Photo Maker (kerneltools.dev/passport-photo-maker) opens, crops and saves your photo or signature inside your browser. The picture is never uploaded, and that page loads no ads.

The What Is My IP page (kerneltools.dev/what-is-my-ip) asks our server which IP address your request came from and shows you the answer, with the approximate location and provider Cloudflare associates with it. The address is not stored or logged by that tool, and the list of changes it shows is kept only in your browser tab.

The Phone Number Lookup page (kerneltools.dev/phone-number-lookup) checks the number you type inside your browser; the number is never sent to Kernel’s servers. For some countries the page downloads that country’s public table of operator number blocks from this site, which reveals only the country you looked up.

Live location sharing (kerneltools.dev/live-location) sends a device’s position only after the person using that device taps “Share my location” and allows it in the browser. Each position is encrypted on the device with a key that exists only in the links, so our server stores a value it cannot read. It keeps the single latest position, no history, and deletes it when sharing is stopped, the sharing page is closed, or the chosen time (at most 4 hours) runs out. Starting a share is rate-limited by IP address like our other forms. The watcher’s map loads its tiles from OpenStreetMap, which therefore sees the area being viewed and the watcher’s IP address, but not who is being located. Along with the position, the encrypted value says when it was measured and whether the sharing page is paused (off screen, for example because the phone is locked); browsers do not share a location while the page is off screen. The sharing or viewing link you open is kept in your browser’s local storage, on that device only, so the live location page can list it, and is removed when the share ends, its time runs out or you remove it from the list.

The Cloud Infrastructure Builder (kerneltools.dev/terraform-builder) generates Terraform and pipeline files in your browser. Configuration is held in this tab and saved only when you download a project file. Imported project files are processed locally. The builder does not collect cloud credentials, contact cloud accounts or deploy resources, and loads no ads or advertising scripts. Exported files run in your own environment or CI platform under its privacy and access controls.

Add to home screen (PDF tools, Base64 tools, Games, IPO, ITR, Live Location)

You can add Kernel PDF Tools, Base64 Tools, Games, IPO, ITR or Live Location to your home screen, like an app. Installing one doesn't change how its pages work: the PDF, Base64 and ITR tools still process your files and figures in your browser. No offline copy is kept on your device for these. If you close the "Add to home screen" suggestion, your browser remembers that for 30 days; this isn't sent to us.

Kernel Split (kerneltools.dev/split)

Kernel Split groups are end-to-end encrypted. When a group is created, your browser makes a secret key for it, and every link to the group carries that key after the “#”, a part of the address browsers never send to us. Everything you type is encrypted with it in your browser before it is uploaded: the group name, the names you enter for each person, optional UPI IDs and PayPal, Revolut or Venmo usernames, every expense and payment (amounts, dates, notes, who paid and how it was split), repeating expenses such as monthly rent, the activity log’s details and the text of notifications. Our server stores only that encrypted data, so we can’t read it, and only people with a link to the group can. To run the group, the server does see some details in the clear: random ids for the group, each person, each entry and each repeating expense; who is an admin; which entries are payments and who received each one (for “confirm you got it”); which people each expense and repeating expense involves; how often each repeating expense repeats and its next date; the group’s time zone, auto-delete period and payment-confirmation setting; when things were created or changed; and how large each encrypted record is. There are no accounts. Each person has a private link, and anyone holding that link can see the group and act as that person, so share each link only with its owner. An admin can cancel a link at any time. We store only a one-way hash of each link’s access code, so we can’t recover or show a link again, and we never have the group’s key. If you set up recovery, your browser makes a recovery key for you to save; we store only a keyed code made from your email (not the email itself), the group key locked with your recovery key, and a check value, so we can email you a one-hour link when you enter the same email, and only your recovery key opens the group again. Groups that nobody opens or changes for 3 months are deleted automatically, with everything in them; a group admin can choose 1, 3, 6 or 12 months instead (the group shows the date), and can delete a group at any time, which permanently removes it for everyone. Expired groups are removed within the hour. If you turn on notifications for a group, we store your device’s push address and its public encryption keys (removed when you turn them off, when the address stops working, or with the group), and your device keeps the group key so it can show them; each notification is encrypted with the group key and again for your device, so neither we nor your browser maker’s push service (Google, Mozilla, Apple or Microsoft) can read it, and it never contains your private link. The quick split on the landing page is not saved. To suggest a currency for a new group we use the country Cloudflare reports for your connection; it is not stored. Exchange rates come from the free currency-api dataset, fetched by our server; nothing about you is sent to it. Kernel Split pages load no ads or advertising scripts. If you add Kernel Split to your home screen, your device keeps a small offline page for it, and if you close the "Add to home screen" suggestion, your browser remembers that for 30 days; neither is sent to us.

Finance calculators and rent receipts (kerneltools.dev/calculators)

The EMI, SIP, FD and old vs new tax regime calculators work out every figure in your browser tab; the amounts you enter are not sent to Kernel’s servers. The rent receipt generator builds its PDF in your browser too: the tenant and landlord names, address and landlord PAN are never uploaded, stored, or saved between visits, and that page loads no ads or advertising scripts.

Kernel Business (kerneltools.dev/business)

Kernel Business is different from the free tools on this site: it has accounts, and what you enter is stored on our servers so that the people in a business can share it. It is kept in a database of its own, separate from the rest of the site. For your account we store your name, your email address, a one-way hash of your password (we never store the password itself, and the hash can’t be checked without a second secret kept outside the database), whether your email is confirmed, and, if you switch on two-step sign-in, the secret your authenticator app uses. When you sign in we set one cookie that only this part of the site receives; it lasts 12 hours, and we store only a one-way hash of it. For each business we store its name, address, state and GSTIN, who its members are, their roles, any start and end dates and working hours set for them, any access lent to them and why, the email addresses of people who have been invited, and an activity log of who changed what and when, which keeps a person’s name after they leave. We also store what the business enters to do its billing: its customers and suppliers (the names, addresses, GSTINs, phone numbers and email addresses typed in), its items and prices, its purchase orders, goods receipts and stock movements, its bills of materials and work centres, its quotations, invoices and credit notes, the payments it records as received from customers, its receipt-matched supplier bills and debit notes and payments recorded to suppliers, and the accounting entries made from them. Sign-in, confirmation and invitation links are sent by email through our email provider; each works once and only a hash of it is stored. To stop password guessing and abuse we keep hourly counters of attempts per network address, per account and per business; they are deleted within three hours. We never sell a business’s records or use them for advertising. Kernel Business pages load no ads or advertising scripts. Where backups are switched on, a copy of each business’s data is made on its own each night it changes and kept, encrypted, for up to 14 nights and 12 months, so that its owner can restore it; a business’s backups are removed 30 days after the business is deleted. A subscription is paid in Telegram Stars through Telegram: we never see a card or bank detail. For each payment we store the Telegram account number of whoever paid, Telegram’s reference for the payment, the amount, the date and what it covers, so that a renewal can be stopped and a payment refunded; these payment records are kept after a business is deleted. We also retain the coupon code, organization identifier and payment reference for a redeemed discount, to enforce one use per organization; these billing redemption records are not rolled back by restoring a business backup. Owners are emailed when a trial is about to end, when a renewal is late or fails, and when a payment is received. You can download your data from “Your account”, and a business’s records from its “Data and backups” page, at any time. An owner can delete a business, which removes it and everything in it at once; anyone can delete their own account, which removes their sign-in and takes them out of every business. An account whose email is never confirmed is deleted after 7 days.

The text and personal details Kernel Business stores are encrypted before they are written to its database. Each business has its own key, and the text and personal details its people enter are encrypted with it: names, addresses, GSTINs, phone numbers and email addresses, item names and descriptions, references, notes and reasons, the snapshots kept on documents, and the activity log. Your own name, email address and two-step sign-in secret are encrypted with a separate key for accounts; to find your account when you sign in we look it up by a keyed code made from your email, not by the address itself. Separate numeric amount, quantity and rate columns, dates, statuses, document numbers and codes such as SKUs and HSN codes are not encrypted, so the database can total them, check stock and enforce its rules. Payroll draft pay inputs stored inside snapshot JSON are encrypted, as described below. The keys are held by our server and themselves protected by a master key kept outside the database, so that the service can show a business’s records to its members, send its emails and run its nightly jobs: this protects copies, exports and direct reads of the database, not against someone in control of the running service. When a business is deleted, its key is destroyed together with its backups (30 days later, or at once when it has none); after that, the text it stored can no longer be read anywhere, including the business name kept on its payment records (the payment facts described above stay readable). If Kernel Business can’t be reached when you save something in it, that change is kept in your browser’s storage on that device, readable there and not encrypted by us, until it has been sent, you discard it or you sign out, and for at most 7 days; it is only ever sent under the account that made it. On top of HTTPS, what Kernel Business pages send and receive, sign-in included, is encrypted again with a key your browser and our server agree when the page opens; the key is never sent over the network and is forgotten when the page closes.

Kernel Business payroll stores employee codes and names, departments and roles, masked bank details (at most four visible digits), employment dates, pay-template revisions, pay inputs and employer/employee snapshots. Review and finalization also store calculation breakdowns, account mappings and actor/timestamp history. Names, codes, bank masks, notes and snapshot JSON are encrypted with the business key before database storage; dates, statuses, revisions, record counts and aggregate paise totals remain readable. The server holds the keys, so this is encryption at rest, not end-to-end encryption. Owners control separate payroll view/edit/submit/export permissions; general data-export access alone does not include payroll records. Finance records expose aggregate accrual amounts and account classifications, without employee identities or individual pay. General activity summaries omit employee identities and pay figures.

The free payroll generator remains local-only. A Business payroll editor reads a saved free-tool draft only when you ask to preview it; copying that preview into the editor does not upload it. An explicit “Save draft to business” action stores the draft on our server. Business payroll editors do not automatically save payroll to browser storage. Corrections retain encrypted reversal reasons and original pay snapshots, with readable actor IDs, dates and links between runs. Authorized historical CSV/PDF/ZIP exports fetch saved output from Business and generate readable files in your browser; these files contain employment/pay data and run/status references and are under your control. Export permission and run status are checked again before download. Business backups include payroll, correction links and their journals; restoring a backup replaces these records too, with an additional payroll confirmation, and a backup made before payroll may remove newer payroll records. Existing business deletion, backup retention and key-deletion rules above apply.

Kernel Business retail checkout can record an ordinary counter sale without a shopper’s name or phone number. If entered, one-off buyer details stay in that bill’s encrypted snapshot; they are not automatically saved as a customer. Retail bills retain cashier identity, item lines, payment method/reference, amounts, change and return/refund history. Buyer snapshots, cashier names, references and return details are encrypted with the business key; amounts, dates, statuses, document links, barcode aliases and item codes remain readable for accounting and lookup. Barcode aliases identify products, not shoppers. Carts are not automatically saved in browser storage. Browser printing uses the saved bill and does not send it to a new printing service. Recording a card or UPI payment/refund does not connect to or verify a bank transaction. Business export, backup/restore, retention and deletion rules above apply to retail records too.

Third-party services

Kernel DevTools does not integrate any third-party analytics, advertising, social, or tracking services inside the extension.

Advertising on kerneltools.dev

Mobile DevTools (/mobile) loads no Google ads, sponsor banners or advertising scripts. This applies to its introduction, Proxy Inspector and popup inspection modes.

Selected pages on kerneltools.dev show ads served by Google AdSense, a third-party vendor. Google and its partners use cookies to serve ads based on your prior visits to this website and other websites. Google’s use of advertising cookies enables it and its partners to serve ads to you based on your visit to this site and/or other sites on the internet. When an ad loads, Google may collect your IP address and browser information to serve and measure ads. See how Google uses information from sites that use its services and the Google Privacy Policy.

You can opt out of personalised advertising in Google’s My Ad Center, or opt out of some other vendors’ use of cookies for personalised advertising at aboutads.info.

Google advertising starts only after an eligible page has loaded its content. Maintenance and loading screens do not start advertising. If a page fails after advertising has started, it reloads without advertising; this can discard unsaved work. Selecting a file in an eligible PDF tool does not upload that file, its text or your passwords to our advertising providers.

Google ads are never loaded inside the extension. On the website they load only on pages with a substantial written guide, such as the PDF tools and finance calculators. These pages never load Google ads or advertising scripts: this privacy policy, the terms, about and contact pages, the home page, the unlock page, the Report an issue and Advertise forms, the Base64 tools, the developer utilities, ITR, the PDF edit checker, the case converter, Kernel Split, the invoice, letter and document generators, Kernel Business, the games and the admin sign-in.

Some pages also show sponsor banners booked through our Advertise page. Their images come from kerneltools.dev, they set no cookies and track nothing, and clicking one opens the sponsor’s site.

The only other third-party network calls are the user-triggered ones listed above (crt.sh, hstspreload.org, ipify.org, and a token issuer's public key address if you ask the Tokens tab to fetch it) — all of which send only the minimum data needed to answer your query.

Changes to this policy

If this policy ever changes, the updated version will be published at this URL and the "Last updated" date at the top will be changed.

Contact

Questions? Report an issue or email [email protected].