64 tools, free forever
Every tool, grouped by job
Candid Tools is a free collection of client-side image editors, PDF utilities, formatters and lookups that process your files entirely in the browser, without uploading them to a server.
Images
Blur Brush
Interactive tool to selectively blur parts of images for privacy
Color Brush
Pick a color from an image with an eyedropper, then brush it onto other areas to touch up or cover details
Rotate Image
Rotate images in 90° increments
Resize Image
Resize an image to exact width and height
Crop Image
Crop an image to a selection you draw
LinkedIn Image Editor
Create a LinkedIn profile image with custom text overlay
Draw Arrow
Draw arrows on images
Image Converter
Convert one or many images, including HEIC iPhone photos, to JPG, PNG, WebP, or AVIF in your browser
HEIC to PNG
Convert HEIC/HEIF iPhone photos to PNG
PNG to JPG
Convert PNG images to smaller JPG files
WebP to JPG
Convert WebP images to JPG for apps that can't open WebP
Flip Image
Flip images horizontally or vertically, supporting SVG files
Image Compressor
Compress (condense) images while maintaining dimensions with customizable quality
Image Compare
Upload two images and create side-by-side comparison for social media
Handwritten Note
Turn typed text into a handwritten-style note image, with your choice of font and colors
Gradient Background
Add a gradient background and white caption text below your image
Strip EXIF
Remove EXIF metadata - including GPS location - from a photo before you share it
HEIC to JPG
Convert HEIC/HEIF iPhone photos to JPG
Background Remover
Cut the background out of a photo with in-browser AI
Blur Faces
Detect and blur every face in a photo automatically
Passport Photo Maker
Make passport and ID photos at the right size for your country
PDFs
PDF Merger
Merge multiple PDF files
Split PDF
Split a PDF into multiple files by page number
PDF to CSV
Extract a table from a text-based PDF into a CSV file, best-effort
Reorder PDF Pages
Reorder the pages of a PDF by thumbnail, then export
Rotate PDF
Rotate every page of a PDF in 90° increments
Add PDF Page Numbers
Add page numbers to the bottom of every page in a PDF
Watermark PDF
Stamp a diagonal text watermark across every page of a PDF
PDF to JPG
Convert every page of a PDF into a JPG image
Crop PDF
Crop every page of a PDF to a selection you draw
Highlight PDF
Highlight text in a PDF in yellow, green, blue or pink, or box areas on scanned pages
Protect PDF
Add a password to a PDF with AES-256 encryption
Extract PDF Pages
Extract specific pages from a PDF file
Remove PDF Password
Unlock a password-protected PDF file
Compress PDF
Shrink a large PDF's file size for easier sharing
JPG to PDF
Combine JPG, PNG and other images into one PDF
PDF to PNG
Turn each PDF page into a lossless PNG image
Sign PDF
Draw, type or upload a signature and place it on a PDF
Redact PDF
Permanently remove text and areas from a PDF
Fill PDF Form
Fill in PDF form fields and save the completed form
Text & Data
JSON Formatter
Format and prettify JSON strings
Base64 Decoder
Decode Base64 to text, images or files, or encode text and files to Base64
CSV Preview
Paste CSV or TSV data and preview it as a scrollable table
Code Snippet
Create and share code snippets
JSON & Text Diff
Compare two blocks of text or JSON line by line and see what changed
Image to Text (OCR)
Extract text from screenshots, photos and scans
Lookups
AI Model ID Lookup
Search and copy the exact API model ID, alias, and pricing for GPT, Claude, Gemini, Grok and DeepSeek models
Domain Info
Lookup domain registration details, age, and ownership information
AWS Edge Locations
Lookup AWS CloudFront edge location details by code
GPU & CPU Info
See which GPU your browser reaches, whether WebGPU really works, and your CPU and memory limits
Utilities
AI Cost Calculator
Calculate how much it costs to use popular AI models based on token usage
AI Model Playground
Run Hugging Face models for text, vision and audio right in your browser - pick a task, pick a model, try it
Age Calculator
Calculate exact age in years, months, and days from a birth date
Transcribe Audio
Turn speech into text with timestamps, in your browser
Remove Background Noise
Clean up a noisy voice recording without uploading it
Voice / Music Splitter
Separate a voice track from background music in your browser
Todo List
Simple and beautiful todo list with local storage
Cron Checker
Enter a cron expression to see the next 10 execution times
QR Code Generator
Turn text or a URL into a scannable QR code
QR Code Reader
Read a QR code from a screenshot or a photo of a poster
Password Generator
Generate strong, random passwords with custom rules
P2P File Share
Send any file straight from your browser to another one - no upload, no size limit
Remove Vocals
Make a karaoke or instrumental version of any song
Video to Text
Transcribe the speech in a video to text and subtitles
How each tool handles your files
Every row is checkable on the tool's own page. Where something does leave your device - the domain you look up, the connection details behind a peer-to-peer transfer - it says so.
| Tool | Accepts | Outputs | Runs in | Leaves your device | Limits |
|---|---|---|---|---|---|
| AI Cost Calculator | Token counts and a model you pick | Estimated cost per call and per million tokens | Your browser | Nothing - what you type stays in this tab | An estimate from listed prices, not a billing figure |
| AI Model ID Lookup | A model name or partial ID you type | The model ID, its aliases and per-token pricing, ready to copy | Your browser | Nothing - what you type stays in this tab - the dataset ships with the page | Covers the models in the bundled dataset, not every model ever |
| AI Model Playground | Text, images or audio clips, depending on the task | Labels, generated text, highlighted entities, boxes drawn on your image, cut-out or depth images, speech, or sentence similarity | Your browser | Nothing of yours - the model's weights are downloaded from Hugging Face on first use, but your input stays in the tab | Public transformers.js models only; model size is bounded by your device's memory, and gated models (Llama, Gemma) aren't supported |
| Age Calculator | A birth date | Exact age, total days lived and days to the next birthday | Your browser | Nothing - what you type stays in this tab | None |
| Domain Info | A domain name | Registration date, age, expiry and registrar | Our server | The domain name you search is sent to our server, which runs the lookup | Some registries publish less RDAP data than others |
| Blur Brush | PNG, JPG, WebP, GIF and other images your browser decodes | A blurred image you download or copy to the clipboard | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Color Brush | PNG, JPG, WebP, GIF and other images your browser decodes | A touched-up image you download or copy to the clipboard | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Rotate Image | PNG, JPG, WebP, GIF and other images your browser decodes | A rotated image you download or copy to the clipboard | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Resize Image | PNG, JPG, WebP, GIF and other images your browser decodes | A resized image you download or copy to the clipboard | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Crop Image | PNG, JPG, WebP, GIF and other images your browser decodes | A cropped image you download or copy to the clipboard | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| JSON Formatter | JSON, Python dicts, AWS CLI and boto3 output, NDJSON, or JSON with comments | Indented valid JSON you copy or save as formatted.json, plus a list of what was repaired | Your browser | Nothing - what you type stays in this tab | No size or count cap; bounded by your device's memory |
| Base64 Decoder | Base64 text (plain, URL-safe or a data: URI), or any text or file to encode | Decoded text, an image preview, or a file download with the right extension; or Base64 text to copy | Your browser | Nothing - what you type stays in this tab | No size or count cap; bounded by your device's memory; files to encode are capped at 50 MB |
| LinkedIn Image Editor | PNG, JPG, WebP, GIF and other images your browser decodes | A profile image with a ring and text overlay | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| PDF Merger | Two or more PDF files | A single merged.pdf, pages copied without re-encoding | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; needs at least two files |
| Split PDF | One PDF file | One PDF per split, each named for the pages it holds | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| PDF to CSV | One text-based PDF file (not a scan) | A CSV file of the detected rows and columns | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; column detection is a positional guess and scanned PDFs have no text to read |
| Reorder PDF Pages | One PDF file | The same PDF with its pages in a new order | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Rotate PDF | One PDF file | The same PDF with the selected pages rotated | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Add PDF Page Numbers | One PDF file | The same PDF with a page number on every page | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Watermark PDF | One PDF file plus the watermark text | The same PDF with a diagonal watermark on every page | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| PDF to JPG | One PDF file | One JPG or PNG per page, at up to 600 DPI | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; higher DPI costs more memory |
| Crop PDF | One PDF file | The same PDF with every page cropped | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Highlight PDF | One PDF file, with selectable text or scanned | The same PDF with highlight annotations (removable in any reader) where you marked it | Your browser | Nothing - the file never leaves your device | Scanned pages take box highlights only; copy-restricted PDFs must be unlocked first |
| Protect PDF | One PDF file plus the password to set | An AES-256 encrypted PDF named <file>-protected.pdf | Your browser | Nothing - the file never leaves your device, and neither does the password | No size or count cap; bounded by your device's memory |
| Extract PDF Pages | One PDF file | A new PDF holding only the pages you picked | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Remove PDF Password | A password-protected PDF plus its password, or a PDF with copy/print restrictions (no password needed) | An unlocked PDF named <file>-unlocked.pdf | Your browser | Nothing - the file never leaves your device, and neither does the password | To open a password-locked PDF you must already know the password - this decrypts, it does not crack |
| Draw Arrow | PNG, JPG, WebP, GIF and other images your browser decodes | An annotated image you download or copy to the clipboard | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| CSV Preview | CSV, TSV, semicolon- or pipe-separated text you paste | A live table preview - no file is generated | Your browser | Nothing - what you type stays in this tab | No size or count cap; bounded by your device's memory |
| Code Snippet | Code you paste, in any of the supported languages | A styled PNG of the snippet | Your browser | Nothing - what you type stays in this tab | Very long snippets get unwieldy as a single image |
| Image Converter | JPG, JPEG, PNG, WebP, GIF, SVG, AVIF, HEIC and other images your browser decodes | One or more PNG, JPG, JPEG, WebP, AVIF, BMP, GIF, SVG, ICO, TIFF, TGA, PPM, XBM or PSD images; JP2 depends on a browser codec | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; output formats depend on browser support, and JPG cannot preserve transparency |
| HEIC to PNG | HEIC and HEIF images | A PNG named converted-image.png | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| PNG to JPG | PNG images | The same image as JPG | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; JPG is lossy and drops PNG transparency |
| WebP to JPG | WebP images | The same image as JPG | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; JPG is lossy and drops WebP transparency |
| Transcribe Audio | MP3, WAV, M4A, AAC, OGG, Opus, FLAC, and the audio track of a video | A timestamped transcript you can copy, or download as .txt or .srt | Your browser | Nothing - the recording never leaves your device; the model weights are downloaded to you | First run downloads the chosen Whisper model, from tens of megabytes to several hundred; no speaker labels; Whisper can hallucinate text over silence or music |
| Remove Background Noise | MP3, WAV, M4A, AAC, OGG, Opus, FLAC, and the audio track of a video | A 16 kHz mono WAV with background noise suppressed | Your browser | Nothing - the file never leaves your device | Output is 16 kHz mono, which is the model's own rate; tuned for speech, so background music is suppressed rather than preserved; roughly 6-10 dB of improvement depending on how noisy the input is |
| Voice / Music Splitter | MP3, WAV, M4A, AAC, OGG, Opus, FLAC, and the audio track of a video | Two 44.1 kHz stereo WAV files, one voice and one music | Your browser | Nothing - the audio never leaves your device; the accurate mode downloads model weights to you | Accurate mode needs a one-time 166 MB download and is slow without WebGPU; the model is trained on sung vocals, so spoken word is out of distribution; the fast mode only works on a steady musical bed |
| Todo List | Tasks you type | A reorderable list saved in this browser | Your browser | Nothing - what you type stays in this tab | Saved per browser; clearing site data erases the list |
| Flip Image | PNG, JPG, WebP, GIF and other images your browser decodes, plus SVG | A flipped image; SVG in stays SVG out, still vector | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| AWS Edge Locations | A country, city or CloudFront edge location code | Whether a country has CloudFront edge locations (and which cities), or the city, country and pricing region for an edge code | Your browser | Nothing - what you type stays in this tab - the dataset ships with the page | Country list copied from AWS on 8 October 2026; the code lookup uses a dataset from November 2024 |
| GPU & CPU Info | Nothing - it reads what your own browser exposes | A readable verdict plus a plain-text report you can copy into a bug report | Your browser | Nothing - every value is read and displayed locally | Browsers expose a core count and a rounded memory bucket, never an exact CPU model or RAM figure |
| Image Compressor | JPG, PNG and WebP images | A smaller image at the original dimensions | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Image Compare | Two images (PNG, JPG, WebP, GIF and other images your browser decodes) | One combined side-by-side comparison image | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Handwritten Note | Text you type | A styled PNG of the note | Your browser | Nothing - what you type stays in this tab | Very long notes get unwieldy as a single image |
| Gradient Background | PNG, JPG, WebP, GIF and other images your browser decodes | A framed image on a gradient background | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Cron Checker | A cron expression | The next 10 run times in your local timezone | Your browser | Nothing - what you type stays in this tab | Shows the next 10 runs; uses your browser's timezone |
| QR Code Generator | Text, a URL or Wi-Fi credentials | A scannable QR code image | Your browser | Nothing - what you type stays in this tab | Very long inputs make denser, harder-to-scan codes |
| QR Code Reader | An image with one or more QR codes, including iPhone HEIC photos | The decoded text of each code, with links, Wi-Fi logins, contacts and other common formats shown readably | Your browser | Nothing - the file never leaves your device | QR, Micro QR and rMQR only (no 1D barcodes); badly blurred or heavily damaged codes cannot be read |
| Password Generator | A length and the character sets you want | A random password, with its entropy shown in bits | Your browser | Nothing - what you type stays in this tab | None |
| Compress PDF | One PDF file | A smaller PDF at the quality or target size you chose | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; pages are re-rendered, so text becomes imagery |
| JSON & Text Diff | Two blocks of text or JSON you paste | A line-by-line diff with additions and deletions highlighted | Your browser | Nothing - what you type stays in this tab | 5,000 lines per side; the diff algorithm is quadratic in line count |
| Strip EXIF | PNG, JPG, WebP, GIF and other images your browser decodes | The same image, pixel-for-pixel, with no EXIF metadata | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| P2P File Share | Any file, of any type | The same file, delivered to the other browser | Your browser | A few KB of connection details, held for at most 10 minutes - never the file | No size limit, but both tabs stay open and some networks block direct connections |
| JPG to PDF | JPG, PNG, WebP, HEIC and other images your browser decodes | One PDF with one image per page | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| HEIC to JPG | HEIC and HEIF images | JPG images | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| PDF to PNG | One PDF file | One PNG per page (JPG also available) | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Remove Vocals | MP3, WAV, M4A, AAC, OGG, Opus, FLAC, and the audio track of a video | Two 44.1 kHz stereo WAV files: the instrumental (karaoke track) and the isolated vocals | Your browser | Nothing - the file never leaves your device | The AI mode needs a one-time 166 MB download and is slow without WebGPU; reverb and backing vocals can leave a faint trace of the singer; the instant centre-channel mode also removes centred bass and drums and fails on mono |
| Video to Text | MP4, WebM, MOV and other videos whose audio your browser decodes | A timestamped transcript you can copy, or download as .txt, .srt or .vtt | Your browser | Nothing - the file never leaves your device | First run downloads the chosen Whisper model, from about 40 MB to several hundred; only videos whose audio your browser can decode; no speaker labels; on-screen text is not read |
| Background Remover | PNG, JPG, WebP, GIF and other images your browser decodes | A transparent PNG, or the subject on a solid colour | Your browser | Nothing - the file never leaves your device | Works up to 16.7 megapixels (larger photos are scaled down); first use downloads a 98-192 MB AI model; fine hair and see-through objects can be imperfect |
| Blur Faces | PNG, JPG, WebP, GIF and other images your browser decodes | The same image with faces blurred | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory |
| Passport Photo Maker | PNG, JPG, WebP, GIF and other images your browser decodes | A photo at the chosen document size, a printable sheet, and an exact-size upload file where the authority sets one (e.g. India 630 x 810 px) | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; checks size and framing, not every official rule; background replacement first downloads a 98-192 MB AI model |
| Image to Text (OCR) | PNG, JPG, WebP, GIF and other images your browser decodes | Editable plain text you can copy or download as .txt, with Tesseract's confidence score | Your browser | Nothing - the file never leaves your device | Engine (about 1.4 MB) and each language (1-3 MB) download from the jsDelivr CDN on first use; printed text works best, handwriting poorly; no layout or tables |
| Sign PDF | One PDF file | The same PDF with your signature added | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; a visual signature, not a certificate-based digital signature |
| Redact PDF | One PDF file | A redacted PDF with the marked content and document metadata removed | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; redacted pages become images, so their remaining text is no longer selectable |
| Fill PDF Form | One PDF file, ideally with fillable form fields | The completed PDF | Your browser | Nothing - the file never leaves your device | No size or count cap; bounded by your device's memory; flat scanned forms need text placed by hand; XFA-only forms aren't supported |