Merge PDF files
Combine several PDFs into one document, in the order you choose. The files stay on your device.
73 single-purpose browser tools and 7 calculators for people running a small service business. All of them work offline once the page has loaded, and none of them send your input anywhere.
Combine several PDFs into one document, in the order you choose. The files stay on your device.
Combine JPG, PNG and other image files into a single PDF, with the page size you choose and the files never leaving your device.
Take a range of pages out of a PDF, or write every page as its own file, without uploading the document.
Compress a JPG, PNG or WebP image in your browser. See the size before and after, and download the result.
Resize a picture to an exact width and height in your browser, with aspect ratio locked and a download of the result.
Convert a picture between JPG, PNG and WebP in your browser, with a quality setting and the real output size.
Cut a rectangle out of a picture and turn it 90, 180 or 270 degrees, in the browser, keeping the original format.
Count words, characters, sentences and paragraphs in any text, with an estimated reading time. Nothing leaves your browser.
Change text between upper case, lower case, title case, sentence case, camelCase, snake_case and kebab-case.
Count characters, characters without spaces, words, lines, sentences, letters, digits and the UTF-8 size of your text.
Delete repeated lines from a list or a block of text, keeping the first occurrence and the original order.
Measure your typing speed in words per minute and your accuracy against a fixed sample, with the formula and a running timer shown.
Generate placeholder text as paragraphs, sentences or single words from a built-in word list, with a chosen amount and the option to start with Lorem ipsum.
Compare two versions of a text line by line. The checker marks added, removed and unchanged lines, runs entirely in your browser and never uploads a word.
Turn any heading into a clean URL slug: lowercased, accents removed, symbols stripped and the separator you choose. Runs in your browser and nothing is saved.
Sort lines of text A to Z, Z to A, numerically or by length, with an option to remove empty lines. Everything runs in your browser and input is capped.
Paste text to see how often each word appears, with counts and percentages from a stated formula. Up to 50,000 characters, nothing uploaded.
Create a QR code for a link, text or any message. Generated in your browser, downloadable as a PNG.
Generate a strong random password in your browser, with length and character controls and a live strength estimate.
Generate one or more random whole numbers in a range you choose, using the browser's cryptographic random source.
Generate version 4 UUIDs in your browser, one at a time or in a batch, with an optional uppercase form.
Turn one image into favicon PNGs at 16, 32, 48, 180, 192 and 512 pixels, drawn on a canvas in your browser. Nothing is uploaded.
Work out an exact age in years, months and days from a date of birth, with the total number of days between the two dates.
Find a percentage of a number, work out what percent one number is of another, and add or subtract a percentage — with the working shown.
Work out the monthly payment, total paid and total interest on a fixed-rate loan, with the formula and the numbers filled in.
Estimate the monthly principal and interest on a mortgage from the price, down payment, rate and term.
See what a lump sum grows to with compound interest, and how much of the result is interest rather than your own money.
Work out a sale price from a percentage discount, including two discounts in a row and the real total percentage off.
Add VAT to a price or take it out again, with the rate you type in and the net, tax and gross figures shown separately.
Count the days between two dates, split into weeks and into years, months and days, with the weekday of each date.
Work out the tip, the total bill and what each person pays when a group splits it.
Return on investment from what you put in and what you got back, with the profit, the percentage and the multiple.
Work out the monthly deposit that reaches a savings target, with the interest you earn along the way.
Grade point average from the courses you list, using the grade points and unit values your own course uses.
Paste any list of numbers to get the mean, median, mode, range, count and sum, with invalid entries ignored and reported. Free and private.
Count working days between two dates with your own holiday list and your own weekend days. Runs in your browser and stores nothing.
A stopwatch with start, pause, reset and laps, measured with performance.now() in this tab. No storage, no cookies, nothing sent anywhere.
Turn a yearly salary into an hourly, daily, weekly and monthly figure using the hours you actually work. Arithmetic only, no tax rules.
Work out BMI from weight in kilograms and height in centimetres, with the WHO bands and the healthy weight range for that height.
Convert length, mass, volume, temperature and speed between metric and imperial units, with the exact factor shown.
Convert a date and time between time zones using your browser's own time-zone data, with the UTC offset and daylight saving shown for each zone.
Convert any number from 1 to 3999 into a Roman numeral and back again, with the working shown step by step. Free and private in your browser.
Convert a number between binary, octal, decimal, hexadecimal and any base from 2 to 36, with big values kept exact. Free and private online.
Work with fractions step by step: add, subtract, multiply and divide, then see the fraction in lowest terms, the mixed number and the decimal.
Simplify a ratio, scale it by a factor or solve a missing value in a proportion, with every step shown. Runs in your browser, nothing is stored.
Format, minify and validate JSON in your browser, with a clear error message when the syntax is wrong.
Encode text to Base64 and decode it back, with UTF-8 handled correctly in both directions.
Percent-encode text for a URL or query string, and decode it back again.
Turn a Unix timestamp into a readable date and time, and a date and time back into a timestamp.
Convert a hex colour code to RGB and HSL, with the working shown and a swatch to check it.
Test a JavaScript regular expression against your own text and see every match, capture group and position, with flags and clear errors for invalid patterns.
Create a SHA-1, SHA-256, SHA-384 or SHA-512 hash of any text using your browser's Web Crypto API. The text never leaves the page.
Check the WCAG 2 contrast ratio between two colours and see the AA and AAA results for normal and large text. Free, instant and private.
Encode text into HTML entities or decode entities back to plain text. The output stays text, never markup, and everything runs in your browser.
Decode a JWT header and payload in your browser. The token is never sent, never verified, and a decoded token proves nothing about its validity.
Convert CSV to JSON or JSON to CSV in your browser, with quoted fields, embedded commas and line breaks inside quotes handled correctly. Nothing is uploaded.
Turn an image into a Base64 data URI in your browser. The file is never uploaded, the size limit is stated, and the result comes with a copy button.
Build a title, description, canonical, Open Graph and Twitter card block as plain text, with length counters as you type. Nothing is uploaded.
Write a robots.txt in plain text: allow everything, block everything or list your own paths, then add a sitemap line. Free, in your browser.
Paste page URLs to get a valid sitemap.xml: escaped characters, duplicates removed, and your chosen change frequency and priority.
Set offset, blur, spread, colour and opacity to build a box-shadow rule, copy the CSS and see it on a sample card. Inset is supported.
Enter a hex colour to get five swatches: two tints mixed with white, the base, and two shades mixed with black, with hex and rgb values.
Estimate a password's entropy from its length and the character classes it uses. Runs in the page and is never stored, sent or logged.
Paste HTML to get Markdown: headings, bold, italics, links, lists, quotes, code and tables, written as text only. Nothing is executed.
Paste a user agent string or read your own to see the browser, version, engine, operating system and device type. Results are approximate.
Paste a SQL statement to get it formatted: keywords uppercased, clauses on their own lines, quoted strings untouched. Formatting only.
Flip a virtual coin with browser crypto randomness, see heads or tails, and keep a running count for this visit. No storage, no bias.
Roll 1 to 10 dice with 4, 6, 8, 10, 12 or 20 sides, see every die and the total. Uniform results from browser crypto, no storage.
Type your options, one per line, and spin to pick one at random. The result is shown as text and marked in the list. Up to 20 options.
A sheet of 100 bubbles to pop by click, tap or keyboard, with a running count, a reset and optional sound that is off by default.
Press any key and made-up log lines scroll past in a fake terminal. It is a toy: nothing runs, nothing is read from your machine.
Get a kind, specific compliment built from built-in word lists, ask for another at any time and copy the line. Nothing is stored.
Build a mild, original stage-villain insult from archaic word lists. Playful only, and not a quotation from Shakespeare.
Add your details and line items. Totals calculate instantly, your draft autosaves on this device, and you can print or save it as a PDF. Nothing is uploaded anywhere.
Margin and markup are not the same number, and mixing them up is the most expensive small mistake in pricing. Put your cost and your price in — you get profit, both percentages, what a discount does to them, and the price you'd need for a target margin.
Three numbers: what it costs you to exist each month, what one job sells for, and what one job costs you to deliver. From there you get how many you must sell before the business stops losing money — and what your current capacity actually earns.
Most people price by guessing, then feel guilty about the number. Start from your real costs, decide your margin on purpose, and see what you should actually charge.
An invoice unpaid for 60 days is not "still outstanding" — it has cost you money twice: what you could have been earning with it, and what the delay is now charging. Put the invoice in and see the running total, plus the one-line figure you can put in a reminder.
Four numbers. One monthly figure. Most owners guess this is a few hundred dollars — it is usually several thousand.
Ten minutes, no signup, honest scoring. Tick what your site already does — the ones you can't tick are where enquiries are being lost. Ticks are saved on this device only.