Skip to content
Client-Side Architecture & Verification

How Our Tools Work

Every VektraTool tool runs inside your web browser: images, text and calculations are processed on your device and are not uploaded to our servers. This page explains what happens to your files and text, how results are checked, and where the limits are.

Methodology last updated:

100% In-Browser

Code runs on your device, not on our servers

Zero Server Uploads

Images, text and formulas never leave your tab

Real Measured Sizes

Downloaded file bytes checked after saving

Automated Checks

Tested across desktop and mobile engines

Do your files and text leave your device?

No. When you open a tool, your browser downloads the page and the tool’s code. From then on, the work happens on your device using features built into every modern browser.

Zero Uploads

Never sent

Images, documents, text, JSON, dates, measurements, loan amounts and generated passwords don’t go to our servers or to anyone else, and nothing you put into a tool is kept after you close the page.

Explicit Choice

Remembered in your browser, because you asked

Your favourite tools and saved presets are stored strictly in your browser's local storage.

Optional Consent

Remembered only if you allow Preferences

Which tools you used and how often, each tool’s last used options, your recent tool searches and the guides you read recently. That is tool and guide names, counts, times and option values, kept on your device.

In-Memory Only

Passed between tools in memory only

“Continue with this image” hands a result to the next tool in the page’s memory; it is never stored or uploaded.

Service Worker Cache

Offline

Pages you have opened before can load again without a connection, and a tool keeps working offline as far as your browser has already downloaded its code. A feature you haven’t used yet may still need the network.

What does reach our server?

What does reach a server is described in the privacy policy: the requests your browser makes to load the pages, and, only if you agree, analytics events such as which tool was used and how many files it processed. Those events never contain your files, text or results.

How do the image tools work?

Your browser opens the image, draws it at the size you need, and saves it again. The sections below cover how reductions, conversions, geometric adjustments and metadata sanitization run inside your browser tab.

Rendering

Decoding and saving

Your browser opens the image, draws it at the size you need, and saves it as JPG, PNG or WebP. Large reductions are done in steps, which keeps edges smooth.

Accuracy

Real file sizes

Every size shown is the size of the actual file you download, measured after it is saved, never an estimate.

Strict Form Limits

Target sizes

A limit such as 50 KB is applied as 50 × 1,000 bytes, so the file passes whether a site counts 1,000 or 1,024 bytes per KB. The tool tries quality levels, and smaller dimensions only when needed, and marks the result as done only when the saved file is within the limit. If it can’t get there, it says so. Next to a target, sizes are shown in the same 1,000-byte units, rounded up, with the exact number of bytes beside them, so a file over the limit never appears to be under it.

Format Conversion

Conversions

A converted image is decoded and saved again in the new format, never just renamed. JPG can’t store transparency, so when a transparent image is saved as JPG, transparent areas are filled with the background colour you choose (white by default). PNG and WebP keep transparency.

Lossless Geometry

Cropping, rotating and flipping

Work on the original image, not the smaller preview on screen. Rotation is in 90° steps, so a quarter turn only swaps the width and height.

Resolution

Dimensions and DPI

Pixel sizes are read from the decoded image, with the camera’s rotation applied. A DPI value is shown only when the file stores one; it is never guessed, and calculated PPI is shown separately.

Privacy & EXIF

Metadata viewer

It shows only fields stored in the file, keeps GPS coordinates hidden until you ask, and never sends them anywhere.

Color Standards

Grayscale

Images are converted pixel by pixel with the Rec. 709 brightness weights used by the CSS grayscale filter, so the saved file really is grey. It is still saved as a colour (RGB) file whose three channels are equal.

Transparency

Backgrounds

Adding a background colour fills only areas that are already transparent; it doesn’t detect or remove a photo’s background.

Sampling

Colour picker

It reads the pixel under your pointer, as your browser shows it in sRGB, with a close-up of the pixels around it so you can see which one you picked. Images over about 16 megapixels are sampled from a copy scaled to that size, and the tool says so.

Filters & Borders

Borders, watermarks and brightness

Borders are added outside the image, so it grows by twice the thickness and nothing is cropped. Watermark size and position are set as a share of the image’s shorter side and drawn with the same code for the preview and the saved file. Brightness and contrast follow the CSS brightness() and contrast() definitions and are applied to the saved pixels, not just shown on screen.

Sanitization

Metadata in saved files

Every image a tool saves is a new file without camera details or GPS location. The exceptions are the image compressor and the compress-to-size tools, which give you back your original file when it is already small enough or compressing wouldn’t make it smaller; that original still has its metadata. Camera rotation is applied first, so pictures stay the right way up.

Document Export

PDFs

PDFs are assembled in the browser, one image per page.

How do the calculators work?

Results are estimates based on the numbers you enter. The BMI, BMR, loan, interest, savings, ROI, tax and business calculators are not medical, financial or tax advice; see the disclaimer.

Important: Calculator estimates show exact formulas and worked steps so you can independently verify any figure before making decisions.

CalculatorMethod & FormulaKeep in mind
Age and date differenceWhole calendar dates; leap years and month lengths counted exactly. Adding months or years keeps the day, or uses the month’s last dayTime zones and daylight saving can’t shift a result. Rules for 29 February birthdays are on the tool page.
Time durationEnd minus start, less any break, for each shift; up to 14 shifts added up, with optional pay = decimal hours × hourly rateAn end time earlier than the start counts as the next day.
Business daysCalendar days minus the weekdays you mark as non-working and the dates you exclude; adding steps day by day, not counting the startNo public-holiday calendar is built in: add your own holidays.
PercentageShows the formula used with every answerPercentage change from zero has no percentage, so the change itself is shown.
DiscountA second discount applies to the already reduced price20% then 10% off is 28% off, not 30%.
Tax (VAT, GST, sales tax)Adds net × rate; removes tax by dividing by (1 + rate)Never removed by subtracting the percentage.
Profit marginMargin = profit ÷ price; markup = profit ÷ costThe two are kept apart because they are easy to confuse.
Break-evenFixed costs ÷ (price − variable cost per unit), rounded upWhen the price doesn’t cover the variable cost there is no break-even point, and it says so.
Unit pricePrice ÷ quantityUnits are never converted, so enter both products in the same one.
Electricity costkWh = watts × hours × quantity ÷ 1,000; cost = kWh × price; periods from the week: a year is week × 365 ÷ 7, a month a twelfth of it; standby counts the rest of the week; a bill = (current − previous reading) × price + fixed charges + amounts + percentages of the energy charge or of the subtotal (never of each other)Uses the power entered, one price for every unit; presets are rough estimates; thermostat appliances usually use less; no tariffs or slabs built in.
Fuel costFuel = distance × L/100 km ÷ 100 after exact conversion (km/L, US or UK mpg; miles, litres, US or UK gallons); cost = fuel × price + tolls and other costs; a commute year = days a week × 365 ÷ 7 (or days a month × 12), a month = a twelfthEvery unit and the price are entered by you; vehicle-type presets are rough estimates; real consumption varies with speed, load, traffic and weather.
TipBill × tip %, split between peopleIt tells you when cent-rounded shares don’t add up to the total.
FractionExact whole-number arithmeticResults are always in lowest terms.
GCD and LCMExact whole numbers: Euclid’s algorithm for the GCD, LCM = a ÷ GCD × b, prime factors by trial divisionWhole numbers from 1 to one trillion, up to ten at a time.
Permutations and combinationsExact products: nPr = n! ÷ (n − r)!, nCr = nPr ÷ r!; with repetition nʳ and C(n + r − 1, r)Over 30 digits, shown in scientific form; copying gives every digit.
Quadratic equationsx = (−b ± √(b² − 4ac)) ÷ 2a, computed in a rearranged form that keeps small roots accurateNegative discriminants give complex roots; a = 0 is solved as a linear equation.
AverageMean = sum ÷ count; median, mode(s) and range from the sorted valuesWhen every value appears equally often there is no mode.
Weighted averageΣ(value × weight) ÷ Σ weights; final exam needed = (target − so far × (1 − w)) ÷ wWeights don’t have to total 100; in percentage mode a different total is flagged.
Standard deviationTwo passes: the mean, then √(Σ(x − mean)² ÷ N) for a population or ÷ (N − 1) for a sampleYou choose sample or population; a sample needs two or more values.
GPA and CGPAΣ(grade points × credits) ÷ Σ credits; letter grades use a common US 4.0 tableGrading scales vary by institution, so grade points on any scale can be entered instead.
BMIWeight ÷ height², with exact pound and inch conversions; WHO, CDC and NHS adult categoriesA screening measure for adults, not a diagnosis.
Body fatU.S. Navy circumference equations (Hodgdon and Beckett, 1984), inches converted exactlyAn estimate for adults; results outside about 2–60% are flagged.
PacePace = time ÷ distance, with an exact 1.609344 km mileAssumes an even pace; times rounded to the second.
BMRMifflin–St Jeor: 10 × kg + 6.25 × cm − 5 × age, + 5 (men) or − 161 (women); activity factors 1.2–1.9An estimate for adults, not a measurement or medical advice.
EMIStandard formula for a fixed-rate loan repaid in equal monthly payments; extra payments simulated month by monthFees aren’t included; not a loan offer. Extra payments are assumed to reduce the balance straight away.
DepreciationStraight-line, declining balance (200% or 150%, switching to straight-line when larger) or sum-of-the-years’ digits; never below salvageWhole years; tax depreciation rules often differ.
SalaryYearly = hourly × hours a day × days a week × paid weeks; monthly = yearly ÷ 12; gross = base + earnings (% of base or fixed); take-home = gross − deductions (% of gross, % of base or fixed); with pre-tax pension and provident fund, a % income tax is of gross minus those; items entered a year are spread over 12 months, and a month without them is shown too; overtime = hours × hourly base pay × rate (1.5 if empty); raise = current × (1 + rate), with the new take-home pay from the same deductions; two offers compared on take-home a month and per hourNo tax rates are built in: deductions are the ones you enter.
Compound interestA = P(1 + r/n)^(nt), with deposits at the end of each month at the equivalent monthly rate, and the effective yearly rate (1 + r/n)^n − 1Assumes a fixed rate with no fees or taxes.
Simple interestI = P × r × t on the principal only, months divided by 12Also shows what yearly compounding would give.
ROI(final value − amount invested) ÷ amount invested; annualised = (final ÷ invested)^(1 ÷ years) − 1Only the two values you enter: fees, taxes and money added along the way aren’t included.
Savings goalMonths = (goal − saved) ÷ deposit, or with interest ln((G·i + D) ÷ (P·i + D)) ÷ ln(1 + i), i = yearly rate ÷ 12Deposits at the end of each month; months and monthly amounts are rounded up so the goal is reached.

How do the text and utility tools work?

Text transformations, encoders, cryptographic utilities and generators run on standard Unicode, Web Crypto and client-side libraries in your browser. The details for each job are below.

Metrics

Counting

Word and character counts are calculated as you type. Reading and speaking times are estimates at 238 and 150 words per minute. Lines are counted the same way in every text tool: empty text has no lines, and a final line break doesn’t add one.

Unicode Standards

Case conversion and duplicates

Capital and small letters follow the standard Unicode rules. Line breaks are kept and lines are never reordered. Duplicate words are found with Unicode word rules, and punctuation and line breaks are never removed with them.

Plain Text Rules

Sorting and find and replace

Work on plain text: nothing you type is treated as a pattern, and lines are sorted with your browser’s language rules.

Safe Sanitization

Whitespace

The whitespace cleaner changes only what the options you select describe. Zero-width joiners, which are part of many emoji and of Persian and Urdu spelling, are always kept, and direction marks are only removed when you ask. Reversed text keeps emoji, flags and accented letters whole.

Encoding

Base64 and URL encoding

Text is converted to UTF-8 first, so every language round-trips. For part of a URL the encoder follows the browser’s encodeURIComponent, which encodes / ? & = and #; for a whole URL it follows encodeURI, which keeps them.

Time Zones

Timestamps

Timestamps are shown in UTC and in your device’s time zone, labelled separately.

Data Integrity

JSON

Checked and reformatted by reading the text itself, so numbers, strings and duplicate keys are never changed; only spaces and line breaks are.

Color Math

Colours

The colour converter keeps exact HEX and RGB values and rounds only HSL for display.

Cryptographic RNG

UUIDs and passwords

Come from your browser’s cryptographically secure random number generator, with every character equally likely in a password.

zxcvbn-ts Client

Password strength

Estimated on your device with the open-source zxcvbn-ts estimator, which looks for common passwords, keyboard patterns, repeats, sequences and dates. The password is never sent, stored or logged, and the crack times shown are estimates.

Web Crypto API

Hashes

Hashes (SHA-256, SHA-384 and SHA-512) are made by your browser’s Web Crypto API from the text encoded as UTF-8, and checked against the published test vectors. A hash is a one-way fingerprint, not encryption.

Direct Vector Rendering

QR codes

Drawn on your device and contain your link or text directly, with no redirect through our servers, so they keep working as long as the link does.

Official API

WhatsApp links

Built in the wa.me format that WhatsApp documents for click-to-chat.

What limits apply to the tools?

Because all calculations and image conversions run directly in your browser without cloud servers, processing is bounded by web platform capabilities and local device hardware.

40 MB / 16 MP

File & pixel dimensions

Images can be up to 40 MB each. Very large images are scaled to about 16 megapixels, the most browsers can process reliably, and the tool tells you when that happens.

Browser Dependent

HEIC format decoding

HEIC photos from iPhones open only in browsers that can decode them. Safari can; Chrome, Edge and Firefox on Windows, Android and Mac can’t.

iOS / Safari Limit

WebP format saving

Safari, and most browsers on iPhone and iPad, can’t save WebP images. On a computer or an Android phone, use Chrome, Edge or Firefox.

Local Hardware

Device-bound processing speed

Because the work happens on your device, speed depends on it: large batches can take a few seconds on older phones.

How we check the tools

Each tool has automated tests that run it in desktop and mobile browsers: images are compressed and their downloaded size checked against the limit, calculators are tested on edge cases such as leap days and month ends, and pages are scanned for accessibility problems. Worked examples in the tool pages and guides are produced with the tools themselves. The disclaimer explains what results are, and aren’t, suitable for.

Automated multi-browser tests

File compressions and exact download sizes are measured against target limits across desktop and mobile browser engines.

Edge case verification

Calculators are tested on leap days, month-end rollovers, 29 February birthdays, and zero-divisor edge conditions.

Worked examples from tools

Every worked example shown in guides and tool documentation is produced directly with the tools’ own computation pipelines.

The test photo behind the measured examples

The file sizes quoted on the image tool pages and in the guides come from one photo, so they can be compared with each other: a 12-megapixel photo taken on an iPhone 14 (4032 × 3024 pixels, 3.7 MB), published under CC0 on Wikimedia Commons. Each figure was produced by running the tool on that file in Chrome with its default settings, and is measured again when an encoder or a default changes.

“Try a sample photo” on the image tools loads a smaller copy of the same photo (2016 × 1512 pixels, without its camera and location data), so its results are smaller than the figures quoted for the full photo.

Found a problem?

If a result looks wrong, please tell us which tool you used and what you expected. Don’t send private files; a description is enough to start.

Report an error
Private & Client-Side by Design

Experience fast, private browser tools

Now that you know how our tools protect your data and verify their calculations, try them on your everyday tasks. No account needed.