Free tools that never see your files. Shrink a photo, turn a HEIC into a JPG, mint a password, work out a time zone. Every one of them runs on your own device — nothing is ever uploaded. Try “heic to jpg”, “compress”, “password”…GoSearch - Popular: - HEIC to JPG (/images/convert/heic-to-jpg) - Compress JPG (/images/compress/jpg) - Resize a photo (/images/resize) - Password generator (/generate/password-generator) - Timezone converter (/time/timezone-converter) 6 toolsPhotos31 formats, 264 routesMost used31 (/images) 8 toolsTextCount and convertMost usedWord & character count (/text) 1 toolColorConvert, check contrastMost used1 (/color) 5 toolsConverterEveryday mathMost used5 (/converters) 4 toolsDeveloperRegex, cron, semver, globMost usedRegex tester (/dev) 3 toolsEncodingText in, text outMost usedBase64 (/encoding) 3 toolsGeneratePasswords, tokens, UUIDsMost usedPassword generator (/generate) 4 toolsCryptoText or filesMost usedHash generator (/crypto) 9 toolsJSONPaste, format, validateMost usedJSON formatter (/json) 9 toolsWebTokens, decoded locallyMost usedJWT decoder (/web) 6 toolsConfigMost used6 (/config) 6 toolsBrowserMeasured in your tabMost usedBrowser report (/browser) 8 toolsDeviceHardware, tested liveMost usedWebcam test (/device) 10 toolsNetworkSubnet math, exactMost usedIPv4 subnet calculator (/network) 6 toolsAITokens, costs, exportsMost usedTokenizer playground (/ai) 3 toolsSkySun and moon, preciselyMost used3 (/sky) 6 toolsFilesMost used6 (/files) 6 toolsDataMost used6 (/data) 1 toolQRLinks, scannableMost usedQR generator (/qr) 6 toolsTimeZones and durationsMost usedTimezone converter (/time) SoonVideoIn the workshopComingMP4, WebM, MOVSoonAudioIn the workshopComingMP3, WAV, FLAC110tools live now31photo formats264ways to convert0bytes we ever receive Our most popular tools All free, no catch, nothing uploaded. All toolsPhotosTextColorConverterDeveloperEncodingGenerateCryptoJSONWebConfigBrowserDeviceNetworkAISkyFilesDataQRTimeComing soonConvertPhotos HEIC, JPG, PNG, WebP, AVIF, RAW and 25 more. 264 pairs. (/images/convert) CompressPhotos Smaller file, keeping the quality that actually matters. (/images/compress) OptimizePhotos The best quality per byte, tuned for each format. (/images/optimize) ResizePhotos Exact pixels, aspect ratio locked. (/images/resize) Encoder benchmarkPhotos Compare codecs head to head on your own machine. (/images/benchmark) Format supportPhotos What image formats THIS browser actually decodes — measured, not a compatibility table. (/images/format-support) Word & character countText Words, characters, graphemes, sentences, lines, and bytes — counted by the same rules every time. (/text/word-count) Case converterText One text in, fourteen casings out — camel, snake, kebab, and more. (/text/case-converter) Markdown ⇄ HTMLText Render Markdown to HTML, convert HTML back — with a DOMPurify-sandboxed preview. (/text/markdown) Markdown tableText CSV, TSV, or pipe text in — an aligned GFM table out, pipes escaped. (/text/markdown-table) Unicode inspectorText Every code point with bytes, escapes, entities, and normalization forms. (/text/unicode) Mojibake repairText Undo UTF-8-read-as-windows-1252 garbling — verified by byte round-trip, never guessed. (/text/mojibake) SMS counterText GSM-7 or UCS-2, parts, and characters left — the 3GPP TS 23.038 math. (/text/sms) Line operationsText Sort, dedupe, trim, filter, renumber — deterministic cleanup with a changelog. (/text/lines) Color converter & contrastColor HEX, RGB, HSL, and HSV from one color, plus the WCAG contrast ratio against another. (/color/converter) Unit converterConverters Length, mass, temperature, data, and more — one value in, every unit out, reference conditions stated. (/converters/units) FractionsConverters Decimals to fractions and back — exact rationals, mixed numbers, repeating decimals marked. (/converters/fractions) StatisticsConverters Mean, median, mode, variance, deviation, quartiles — paste numbers, get every measure. (/converters/statistics) Prime / GCD / LCMConverters Primality, factorization, next/previous prime, ranges, and multi-number GCD/LCM — exact BigInt. (/converters/primes) Aspect ratio & DPIConverters Exact aspect ratios, resize targets that lock the ratio, PPI from real dimensions, print sizes. (/converters/aspect-ratio) Regex testerDeveloper Test a regular expression against your own text — the browser’s own engine, in a disposable worker. (/dev/regex-tester) Cron explainerDeveloper Explain a cron schedule in plain English and list its next fire times, dialect and timezone explicit. (/dev/cron) Semver compareDeveloper Sort versions, compare two, and match ranges — strict SemVer 2.0.0, coercion shown separately. (/dev/semver) Glob testerDeveloper Test glob patterns against a list of paths — picomatch in a bounded worker, dialect explicit. (/dev/glob-tester) Base64Encoding Encode and decode, with a URL-safe alphabet option. (/encoding/base64) URL encoderEncoding Percent-encode components or whole URIs, and back. (/encoding/url-encoder) Image ⇄ Base64Encoding Image files to data URLs and back — format read from bytes, dimensions decoded, nothing re-encoded. (/encoding/image-base64) Password generatorGenerate Properly random, with an honest strength meter. (/generate/password-generator) Random token generatorGenerate API keys, hex secrets, nanoids, and sortable ULIDs — CSPRNG, entropy stated. (/generate/random-token) UUID generatorGenerate RFC 9562 UUIDs — v1, v3, v4, v5, v6 and v7. (/generate/uuid-generator) Hash generatorCrypto SHA-2, SHA-3, Keccak, BLAKE and legacy checksums, for text or files. (/crypto/hash) Password strengthCrypto Score a password with zxcvbn — the guessing model, with matched patterns shown. (/crypto/password-strength) HMACCrypto Keyed MACs over text — SHA-1/256/384/512 through WebCrypto, keys as text/hex/base64. (/crypto/hmac) bcryptCrypto Hash with bcryptjs cost 4–15 in a disposable worker; verify against a pasted hash. (/crypto/bcrypt) JSON formatterJSON Pretty-print or minify, sort keys, and validate. (/json/formatter) JSON ValidatorJSON Check strict JSON or JSONC, then explore it as a tree. (/json/validator) JSON SortJSON Sort object keys — top level or every level. (/json/sort) JSON String EscapeJSON Escape raw text into a JSON string body, and back. (/json/escape) JSON QueryJSON Pull values out with JSON Pointer or a JSONPath subset. (/json/query) JSON DiffJSON Semantic and text comparison of two documents, with an RFC 6902 patch export. (/json/diff) JSON ConverterJSON Convert JSON to and from YAML, TOML, CSV, XML, NDJSON, query strings, .env, MessagePack, CBOR, and BSON. (/json/convert) JSON to CodeJSON Generate TypeScript, Go, Rust, and Zod from JSON. (/json/codegen) JSON Schema ValidatorJSON Validate JSON against a JSON Schema — 2020-12, 2019-09, or draft-07 — with every rule stated up front. (/json/schema) JWT decoderWeb Inspect headers and claims; verify signatures with a local key. (/web/jwt) TOTP generator & verifierWeb RFC 6238 codes from an authenticator secret — plus code verification with clock-drift window. (/web/totp) PKCE pairWeb Generate an RFC 7636 verifier/challenge pair, or check a pair against each other. (/web/pkce) Subresource integrityWeb Hash a script or stylesheet into an integrity= attribute — text or file. (/web/sri) Authorization headerWeb Parse an Authorization header — Basic decodes, Bearer shape-checks, Digest splits. (/web/auth-header) CSP evaluator & builderWeb Evaluate a Content Security Policy with csp_evaluator — or build one, finding by finding. (/web/csp) SAML inspectorWeb Read a SAML response — fields, attributes, conditions — and check its signature. (/web/saml) Certificate & CSRWeb X.509 certificates and CSRs — subject, SANs, validity window, key facts. (/web/certificate) JWK / JWKSWeb Inspect a JSON Web Key or JWKS — members, thumbprint, PEM form. (/web/jwk) .env editorConfig Inspect and format .env files — duplicates, exports, quoting rules named. (/config/env) INI editorConfig Parse INI — sections, dotted paths, boolean coercions, last-wins duplicates. (/config/ini) .properties editorConfig Java properties — dotted keys, escapes decoded, comments counted. (/config/properties) chmod calculatorConfig Octal ⇄ symbolic permission modes, special bits named for what they do. (/config/chmod) CSV → SQLConfig Paste CSV, get INSERT statements — quoted per standard SQL, NULLs by your choice. (/config/csv-to-sql) docker run → composeConfig Turn a docker run command into a compose service — unmapped flags listed, never dropped. (/config/docker) Browser reportBrowser Every identity field your browser volunteers — read live in this tab, caveats included. (/browser/ua-report) UA parserBrowser Paste any user-agent string, see the browser, engine, OS, and device it claims. (/browser/ua-parser) Capability dashboardBrowser Which APIs this browser has — presence measured, permissions only queried, never asked. (/browser/capabilities) Feature supportBrowser A dated web-platform snapshot checked live — where this browser agrees, leads, or lags. (/browser/feature-support) Screen & viewportBrowser Screen, DPR, layout and visual viewports, orientation, preferences — live, fingerprinting labeled. (/browser/screen) Deep probesBrowser Fonts, codecs, WebGL/WebGPU, storage, permissions — the five probes that need real work. (/browser/probes) Webcam testDevice See yourself, read the track's real settings, switch cameras — permission only on your click. (/device/webcam) Microphone testDevice A live level meter over the real stream — nothing recorded, permission only on your click. (/device/microphone) Speaker testDevice Left, right, both — three synthesized tones; your ears do the checking. (/device/speakers) Keyboard testDevice Press keys in the zone — see key, code, location, and modifiers exactly as the browser sees them. (/device/keyboard) Gamepad testDevice Buttons with real names under standard mapping, live axes, an explicit vibration pulse. (/device/gamepad) Dead pixel testDevice Five solid colors, full screen — your eyes are the detector, and the page says so. (/device/dead-pixel) Refresh rateDevice A four-second frame-timestamp sample — median-interval Hz with every caveat kept honest. (/device/refresh-rate) Screen recorderDevice Record your screen, a window, or a tab — permission on your click, every resource released on stop, output verified. (/device/screen-recorder) IPv4 subnet calculatorNetwork Network, broadcast, mask, wildcard, host counts — exact BigInt math on your CIDR. (/network/ipv4-subnet) IPv6 expand & compressNetwork Expand, compress, and canonicalize IPv6 — RFC 5952 rules applied and named. (/network/ipv6-format) IPv6 prefix calculatorNetwork First and last address, exact 2^n capacity, arpa prefix — for any /0–/128. (/network/ipv6-subnet) IP range classifierNetwork Private, reserved, or special-purpose — checked against a dated IANA registry snapshot. (/network/ip-classify) IP number formsNetwork IPv4/IPv6 as integer, hex, and binary — exact both directions. (/network/ip-numbers) VLSM plannerNetwork Allocate unequal subnets from one base — every sizing decision visible as a step. (/network/vlsm) Subnet split & aggregateNetwork Split a block into equal children, or merge siblings back — preconditions refused honestly. (/network/subnet-split) MAC & EUI-64Network Every MAC notation, the U/L and group bits named, the EUI-64 and its fe80:: derivation. (/network/mac-eui64) Port referenceNetwork A dated, curated IANA port snapshot — search numbers, names, and protocols. (/network/ports) Bandwidth calculatorNetwork Transfer time at a line rate — exact fractions, both unit bases, no fake efficiency. (/network/bandwidth) Tokenizer playgroundAI Count and inspect OpenAI tokens — o200k, cl100k, p50k, r50k, in a worker. (/ai/tokenizer) Context fitAI Does your prompt fit? Exact OpenAI counts; labeled estimates for any other model. (/ai/context-fit) API cost estimatorAI What a prompt costs to run — dated price data, exact arithmetic, tiers applied. (/ai/cost-estimator) Fine-tune JSONL formatterAI Validate and format training files — target presets, per-line errors, loss ledger. (/ai/jsonl-formatter) Chat export viewerAI Read a ChatGPT export or JSONL log — virtualized, local, nothing sent anywhere. (/ai/chat-export) Chat template rendererAI Render a transcript to ChatML, Llama, Mistral, or Gemma format — with token counts. (/ai/chat-template) Sunrise & sunsetSky Every twilight phase of one day — dawn to dusk, on the place's own clock. (/sky/sunrise-sunset) Golden hourSky Golden and blue hour windows — altitude-crossing boundaries, durations included. (/sky/golden-hour) Moon phaseSky Illumination, named phase, moonrise and moonset, and the next new and full moons. (/sky/moon-phase) PDF inspectorFiles Page count, page sizes, metadata, and which pages carry text — read from structure, nothing rendered. (/files/pdf-inspect) PDF page toolsFiles Extract, delete, or rotate pages by an explicit spec — output re-loaded and verified before download. (/files/pdf-pages) ZIP inspector & builderFiles List ZIP contents without inflating them — sizes, ratios, traversal flags — extract single entries or build a new archive. (/files/zip) Photo metadataFiles See what a photo discloses — GPS, device, dates, software — then re-encode it clean, verified. (/files/exif) Font inspectorFiles Read TTF, OTF, and WOFF files — names, metrics, glyph count, tables, axes — with a sandboxed sample outline. (/files/font) SVG sanitizerFiles Disclose what an SVG carries — scripts, handlers, external refs — then get a copy that cannot fetch or run anything. (/files/svg) Fake namesData Fake names from a locale’s own pools — first, last, and full — seeded so every list reproduces. (/data/name) Fake addressesData Fake street, city, region, postcode, and country rows in the locale’s pattern — shapes for tests, never locations. (/data/address) Fake phone numbersData Phone numbers that match a locale’s pattern — for form tests, with no live/dead claim anywhere. (/data/phone) Fake peopleData Whole fake people — name, username, example-domain email, phone, birthday, job, address — one seeded row. (/data/person) Fake companiesData Invented company names with catch phrase and buzz phrase — fixture businesses matching no registry. (/data/company) Bulk test dataData Thousands of fake rows for tests — pick columns, lock a seed, export JSON, JSONL, or CSV. (/data/test-data) QR generatorQR A scannable QR code for any link or text — PNG or SVG, in your browser. (/qr/generator) Timestamp converterTime Unix to ISO 8601 and back, with relative time. (/time/timestamp-converter) Timezone converterTime One moment across every zone, laid out side by side. (/time/timezone-converter) Duration converterTime Milliseconds up to weeks, with a human breakdown. (/time/duration-converter) Availability sharerTime Share free slots by link. No calendar connection. (/time/availability) Date mathTime Add durations to a date and diff two dates — wall-clock vs elapsed across DST, both stated. (/time/date-math) Calendar converterTime Gregorian ⇄ Hijri, Hebrew, Persian, Chinese, and eleven more — your browser's ICU tables. (/time/calendar-converter) Time hubTime Every time utility in one place. No files needed. (/time) Why we're different Everyone says they delete your files. We never get them. A promise to delete is something you have to take on trust. This isn't a promise — there's no upload step, so no copy of your photo exists on any machine but yours. Nothing to leak, nothing to subpoena, nothing to quietly train a model on. See how it works (#how-it-works-steps) 1. 1Pick the toolIt opens working. No account wall. 2. 2Your device does the workWebAssembly codecs, on your own processor. 3. 3Save it and goWorks with the wi-fi off, once loaded. The website is free. Properly free. No daily limit, no watermark, no “upgrade to download”. Pay only if you want the desktop app, and that isn't out yet. What you're usingFree$0forever The whole web toolbox, no strings attached. - Every tool in the browser - No account, no email address - No cap on how much you convert - Keeps working with the wi-fi off Start using it (/images) ProComing soon$9/ month The desktop app, for when a whole folder needs doing. - Everything in Free - A real app for Mac and Windows - Works with no internet at all - Do a whole folder in one go - Cancel whenever you like Coming soonPro, yearlyComing soon$90/ year Exactly the same Pro, with two months on the house. - Everything in Pro - Two months free versus monthly - One payment, then forget about it - Cancel whenever you like Coming soonPro — the desktop app$9 / month, or $90 / yearSoon The questions everybody asks So my photos really aren't uploaded? Really. The converters run inside the page. Your file goes from disk into the browser's memory, through your own processor, and back out as a download. The only thing fetched over the network is the page itself. Do I have to sign up? No. Every tool works without an account, a quota, or an email address. There's nothing to verify and no newsletter waiting on the other side. How big a file can it handle? That depends on your computer, not on us — the work happens in your browser's memory. Batch jobs run one file at a time to stay comfortably inside it. Will it open photos from my iPhone? Yes — HEIC is handled, along with camera RAW from most DSLRs: CR2, NEF, ARW and DNG. Drop one in and choose what you want out the other side. Does it work on a plane? Once a tool page has loaded, yes. Everything it needs is already in the page, so you can cut the connection and carry on working. What's the catch on “free”? There isn't one on the website — your device does the computing, so it costs us almost nothing to run. The paid part is the desktop app, and it's still being built. Canonical HTML: https://nutter.tools Markdown version: https://nutter.tools/index.md Plain-text version: https://nutter.tools/index.txt Agent index: https://nutter.tools/llms.txt