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:
Code runs on your device, not on our servers
Images, text and formulas never leave your tab
Downloaded file bytes checked after saving
Tested across desktop and mobile engines
Privacy Architecture
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.
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.
Remembered in your browser, because you asked
Your favourite tools and saved presets are stored strictly in your browser's local storage.
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.
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.
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.
Image Engine Specifications
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.
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.
Real file sizes
Every size shown is the size of the actual file you download, measured after it is saved, never an estimate.
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.
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.
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.
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.
Metadata viewer
It shows only fields stored in the file, keeps GPS coordinates hidden until you ask, and never sends them anywhere.
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.
Backgrounds
Adding a background colour fills only areas that are already transparent; it doesn’t detect or remove a photo’s background.
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.
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.
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.
PDFs
PDFs are assembled in the browser, one image per page.
Formulas & Edge Cases
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.
| Calculator | Method & Formula | Keep in mind |
|---|---|---|
| Age and date difference | Whole calendar dates; leap years and month lengths counted exactly. Adding months or years keeps the day, or uses the month’s last day | Time zones and daylight saving can’t shift a result. Rules for 29 February birthdays are on the tool page. |
| Time duration | End minus start, less any break, for each shift; up to 14 shifts added up, with optional pay = decimal hours × hourly rate | An end time earlier than the start counts as the next day. |
| Business days | Calendar days minus the weekdays you mark as non-working and the dates you exclude; adding steps day by day, not counting the start | No public-holiday calendar is built in: add your own holidays. |
| Percentage | Shows the formula used with every answer | Percentage change from zero has no percentage, so the change itself is shown. |
| Discount | A second discount applies to the already reduced price | 20% 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 margin | Margin = profit ÷ price; markup = profit ÷ cost | The two are kept apart because they are easy to confuse. |
| Break-even | Fixed costs ÷ (price − variable cost per unit), rounded up | When the price doesn’t cover the variable cost there is no break-even point, and it says so. |
| Unit price | Price ÷ quantity | Units are never converted, so enter both products in the same one. |
| Electricity cost | kWh = 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 cost | Fuel = 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 twelfth | Every unit and the price are entered by you; vehicle-type presets are rough estimates; real consumption varies with speed, load, traffic and weather. |
| Tip | Bill × tip %, split between people | It tells you when cent-rounded shares don’t add up to the total. |
| Fraction | Exact whole-number arithmetic | Results are always in lowest terms. |
| GCD and LCM | Exact whole numbers: Euclid’s algorithm for the GCD, LCM = a ÷ GCD × b, prime factors by trial division | Whole numbers from 1 to one trillion, up to ten at a time. |
| Permutations and combinations | Exact 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 equations | x = (−b ± √(b² − 4ac)) ÷ 2a, computed in a rearranged form that keeps small roots accurate | Negative discriminants give complex roots; a = 0 is solved as a linear equation. |
| Average | Mean = sum ÷ count; median, mode(s) and range from the sorted values | When every value appears equally often there is no mode. |
| Weighted average | Σ(value × weight) ÷ Σ weights; final exam needed = (target − so far × (1 − w)) ÷ w | Weights don’t have to total 100; in percentage mode a different total is flagged. |
| Standard deviation | Two passes: the mean, then √(Σ(x − mean)² ÷ N) for a population or ÷ (N − 1) for a sample | You 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 table | Grading scales vary by institution, so grade points on any scale can be entered instead. |
| BMI | Weight ÷ height², with exact pound and inch conversions; WHO, CDC and NHS adult categories | A screening measure for adults, not a diagnosis. |
| Body fat | U.S. Navy circumference equations (Hodgdon and Beckett, 1984), inches converted exactly | An estimate for adults; results outside about 2–60% are flagged. |
| Pace | Pace = time ÷ distance, with an exact 1.609344 km mile | Assumes an even pace; times rounded to the second. |
| BMR | Mifflin–St Jeor: 10 × kg + 6.25 × cm − 5 × age, + 5 (men) or − 161 (women); activity factors 1.2–1.9 | An estimate for adults, not a measurement or medical advice. |
| EMI | Standard formula for a fixed-rate loan repaid in equal monthly payments; extra payments simulated month by month | Fees aren’t included; not a loan offer. Extra payments are assumed to reduce the balance straight away. |
| Depreciation | Straight-line, declining balance (200% or 150%, switching to straight-line when larger) or sum-of-the-years’ digits; never below salvage | Whole years; tax depreciation rules often differ. |
| Salary | Yearly = 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 hour | No tax rates are built in: deductions are the ones you enter. |
| Compound interest | A = 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 − 1 | Assumes a fixed rate with no fees or taxes. |
| Simple interest | I = P × r × t on the principal only, months divided by 12 | Also shows what yearly compounding would give. |
| ROI | (final value − amount invested) ÷ amount invested; annualised = (final ÷ invested)^(1 ÷ years) − 1 | Only the two values you enter: fees, taxes and money added along the way aren’t included. |
| Savings goal | Months = (goal − saved) ÷ deposit, or with interest ln((G·i + D) ÷ (P·i + D)) ÷ ln(1 + i), i = yearly rate ÷ 12 | Deposits at the end of each month; months and monthly amounts are rounded up so the goal is reached. |
Text & Utility Specifications
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.
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.
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.
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.
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.
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.
Timestamps
Timestamps are shown in UTC and in your device’s time zone, labelled separately.
JSON
Checked and reformatted by reading the text itself, so numbers, strings and duplicate keys are never changed; only spaces and line breaks are.
Colours
The colour converter keeps exact HEX and RGB values and rounds only HSL for display.
UUIDs and passwords
Come from your browser’s cryptographically secure random number generator, with every character equally likely in a password.
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.
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.
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.
WhatsApp links
Built in the wa.me format that WhatsApp documents for click-to-chat.
System Constraints
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.
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.
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.
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.
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.
Testing & Verification
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.
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.
Everyday tools to start with