Text Tools

Process, transform, and analyse text with 15 free utilities built for writers, developers, and content creators.

From counting words and converting letter case to diffing two documents, generating lorem ipsum, or encoding with Morse code — every tool runs entirely in your browser. Paste your text and get results in seconds, with nothing uploaded to any server.

Writing & Editing
Word & Character Counter
Count words, characters, sentences, paragraphs, and reading time. Paste any text for instant analysis.
Use Word Counter
Case Converter
Convert text to UPPER CASE, lower case, Title Case, Sentence case, camelCase, and more with one click.
Use Case Converter
Text Reverser
Reverse any text character by character, or reverse the order of words and lines instantly.
Use Text Reverser
Find & Replace
Find and replace words or phrases in bulk text. Supports case-sensitive and regex-based replacements.
Use Find & Replace
Text Truncator
Trim text to a maximum character or word limit. Ideal for meta descriptions, tweets, and previews.
Use Text Truncator
Whitespace Cleaner
Remove extra spaces, blank lines, leading/trailing whitespace, and tabs from any block of text.
Use Whitespace Cleaner
Lines & Lists
Remove Duplicate Lines
Paste a list and instantly remove all duplicate lines, keeping only unique entries. Case-sensitive option included.
Use Remove Duplicates
Sort Lines
Sort lines alphabetically (A–Z or Z–A), by length, or numerically. Useful for cleaning up lists and datasets.
Use Sort Lines
String Repeater
Repeat any string or character a specified number of times. Useful for generating test data or padding strings.
Use String Repeater
Text Diff
Compare two blocks of text side-by-side. Highlights added, removed, and changed lines for easy review.
Use Text Diff
Character Frequency
Analyse character frequency in any text. See which letters, numbers, and symbols appear most often.
Use Char Frequency
Generation & Encoding
Lorem Ipsum Generator
Generate placeholder Lorem Ipsum text by words, sentences, or paragraphs. Perfect for design mockups and prototypes.
Use Lorem Ipsum
Text to Slug
Convert any text or headline into a URL-friendly slug. Removes special characters and replaces spaces with hyphens.
Use Text to Slug
Morse Code Translator
Translate text to Morse code and back. Supports full alphabet, numbers, and common punctuation marks.
Use Morse Code
ROT13 Encoder
Encode or decode text using the ROT13 cipher. The same tool works both ways — great for simple obfuscation.
Use ROT13

Free Online Text Tools

Our collection of free text tools helps writers, developers, and content creators work faster. From word counting and case conversion to sorting lists, generating Lorem Ipsum, and encoding text — all tools run instantly in your browser with no sign-up required.

From the Blog

In-depth technical articles and guides.

View all →
Sort Lines — Sort Any List Alphabetically, Numerically, or by Length
Sort Lines — Sort Any List Alphabetically, Numerically, or by Length
Learn how to sort any text list alphabetically, numerically, by length, or randomly, why numerical sort differs from alphabetical for numbers, and how to use a free sort lines tool for any list.
String Repetition and ANSI Escape Codes: How Progress Bars, Borders, and Terminal UIs Are Built
String Repetition and ANSI Escape Codes: How Progress Bars, Borders, and Terminal UIs Are Built
A terminal progress bar, a box-drawn menu, and colored CLI output all rely on the same underlying operation: repeating a character a calculated number of times, often combined with ANSI escape codes for color and cursor control. Here's how string repetition builds progress bars and borders, why Unicode box-drawing characters connect seamlessly at corners, and how terminal width affects repeated-character output.
International URL Slugs: Transliteration vs Native Characters for Non-Latin Scripts
International URL Slugs: Transliteration vs Native Characters for Non-Latin Scripts
Chinese, Arabic, and Cyrillic characters in URLs are technically valid and browsers display them readably — but transliteration vs native-language slugs involves real SEO and UX trade-offs. Here's how percent-encoding works, transliteration libraries for different languages, and how major frameworks handle non-ASCII slugs.
How Diff Works: Git, Three-Way Merge, and the Myers Algorithm Behind It
How Diff Works: Git, Three-Way Merge, and the Myers Algorithm Behind It
Git diff, pull request reviews, and three-way merges all run on the Myers diff algorithm. Here's how diff finds the shortest edit between two texts, how to read git diff output, why merge conflicts happen, and how diff applies beyond version control.
AI-Generated Content Has a Whitespace Fingerprint — Why Normalisation Matters Before Publishing or Processing
AI-Generated Content Has a Whitespace Fingerprint — Why Normalisation Matters Before Publishing or Processing
AI-generated content carries whitespace patterns — double-line-spacing from training data, inconsistent bullet markers, occasional zero-width Unicode characters — that cause rendering issues when pasted into CMSs. Here's how to normalise whitespace before LLM input (reducing tokens and improving output), why whitespace sensitivity in text diff changes what differences are shown, and the specific Word document whitespace artifacts (non-breaking hyphens, soft hyphens, figure spaces) that appear on export.
Why "JohnSmith" and "johnsmith" Are the Same Account Here But Different Accounts There: Case Sensitivity in Login Systems
Why "JohnSmith" and "johnsmith" Are the Same Account Here But Different Accounts There: Case Sensitivity in Login Systems
"JohnSmith" and "johnsmith" might be the same account on one platform and two different accounts on another — usernames, emails, and passwords each have different case-sensitivity conventions, and none of them are universal. Here's why email local-parts are technically case-sensitive but practically never are, why username case-sensitivity varies by platform and creates genuinely hard migration problems if changed later, why passwords must remain case-sensitive for security, and why mobile autocapitalize causes invisible login failures.
Remove Duplicate Lines — Clean Any List by Removing Duplicates Instantly
Remove Duplicate Lines — Clean Any List by Removing Duplicates Instantly
Learn how to remove duplicate lines from any list, the difference between case-sensitive and case-insensitive deduplication, edge cases with whitespace and blank lines, and how to use a free duplicate line remover tool.
Why ROT13's Encode Button and Decode Button Do the Same Thing — and Why That's the Point
Why ROT13's Encode Button and Decode Button Do the Same Thing — and Why That's the Point
ROT13 shifts each letter by 13, and shifting by 13 again returns you to the start — because 13 is exactly half of 26, and the English alphabet has 26 letters. This self-inverse property means "encode" and "decode" are literally the same operation, which is exactly why ROT13 became the standard for Usenet spoilers and forum answers: one button, symmetric, no separate decode tool needed. Here's the math, the variants (ROT5, ROT18, ROT47), and where self-inverse operations appear elsewhere.
Case Converter — Transform Text to Any Case Style Instantly
Case Converter — Transform Text to Any Case Style Instantly
Learn the difference between upper, lower, title, sentence, camelCase, PascalCase, snake_case, and kebab-case, when each is used in writing and programming, and how to convert text instantly with a free case converter.
Slug Collisions: What Happens When Two Pages Generate the Same URL, and How CMSs Handle It
Slug Collisions: What Happens When Two Pages Generate the Same URL, and How CMSs Handle It
Two posts titled "How to Make Sourdough Bread" generate identical slugs by default — and what happens next varies by CMS, from silent numeric suffixes (chocolate-chip-cookies-2) to outright rejection requiring manual resolution. Here's how different collision-handling approaches work, why date/ID-based URL structures avoid most collisions structurally, and the tricky edge case of new content colliding with an old slug's redirect.