URL Encoder and Decoder

Percent-encode text as a URL component or a full URL — or decode it back — instantly, plus a query-string parser. Free, private, no signup.

Direction
Scope

0 characters
0 characters

Query-string parser

Paste a full URL or just its query string — the parameters appear below, decoded, live.

Paste a URL above to see its parameters.

How to use the URL encoder

  1. Pick a direction. Encode turns plain text into percent-encoded form (%20 and friends); Decode turns it back.
  2. Pick a scope — this is the important choice.
    • URL component (encodeURIComponent): for a single value that will be embedded inside a URL — a search term, a query parameter value, a path segment. It escapes every character with a special meaning in URLs, so / ? & = # + become %2F %3F %26 %3D %23 %2B. Encoding a value? Use this.
    • Full URL (encodeURI): for an already-complete URL that just needs fixing up. It preserves the URL's structure — / ? & = # are left untouched — and only encodes characters that are illegal in a URL, like spaces and emoji. Encoding a whole URL? Use this.
    The rule of thumb: encoding a value → component; encoding a whole URL → full URL. When decoding, use the same scope the string was encoded with.
  3. Paste or type into the top box. The result updates live with every keystroke — no button to press.
  4. Copy the result. Use “Copy result” under the output box, or the top “Copy” button to copy your input.
  5. Going back and forth? The ⇅ Swap button puts the current result into the input and flips the direction in one click.
  6. Need a URL's parameters? Scroll to the query-string parser, paste the URL, and read off the decoded parameter table. Repeated keys get one row each; empty values are marked (empty).

Frequently asked questions

What is the difference between URL-component encoding and full-URL encoding?

URL-component encoding (encodeURIComponent) escapes every character that has a special meaning in a URL — slashes, question marks, ampersands, equals signs, hash marks — so the text can be embedded safely as a single value. Full-URL encoding (encodeURI) preserves the URL's structure and only escapes characters that are truly illegal in a URL, such as spaces and most non-ASCII characters. Use component mode for a value going inside a URL; use full-URL mode for an already-complete URL that just needs fixing up.

How do I encode text for use in a URL?

Choose the Encode direction, pick the URL component scope if your text is a single value such as a search term or a query parameter, type or paste it in the top box, and copy the encoded result. The conversion updates live as you type.

How do I decode a URL-encoded string?

Switch to the Decode direction, paste the percent-encoded string, and choose the same scope it was encoded with — component for encodeURIComponent output, full-URL for encodeURI output. If the input contains a malformed sequence, like a percent sign not followed by two hex digits, you will see a plain-English explanation instead of an error dump.

What do the percent signs and numbers in a URL mean?

That is percent-encoding: any character that cannot appear literally in a URL is replaced by a percent sign followed by two hexadecimal digits representing its UTF-8 bytes. For example, a space becomes %20, a slash becomes %2F, and the emoji 🎉 becomes %F0%9F%8E%89 because it takes four bytes in UTF-8.

Why are spaces sometimes %20 and sometimes + in URLs?

Both mean a space, but they come from different conventions. encodeURIComponent — which this tool uses in component mode — always produces %20 and never +. The + convention comes from HTML form submissions (application/x-www-form-urlencoded), where spaces in form data are sent as +. This tool's decoder treats a literal + as a plus sign (the strict standard), while the query-string parser converts + to a space, matching how real web servers read form data.

What does the query-string parser do?

Paste a full URL (for example, https://example.com/search?q=codex%20tools&lang=en) or just its query part (?q=codex%20tools&lang=en) and the parser splits it into a table of parameter names and decoded values. It handles repeated keys, empty values, and percent-encoded characters automatically.

How are repeated parameters like ?tag=a&tag=b handled?

Each occurrence gets its own row in the table, in the order it appears. Nothing is merged or overwritten, so ?tag=a&tag=b shows two rows — tag = a and tag = b. Parameters with no value, like ?flag, or an empty value, like ?q=, are shown as (empty).

Why does decoding fail on some inputs?

Decoding fails when a percent sign is not followed by exactly two hexadecimal digits — for example, %2, %zz, or a stray % at the end of the string. A literal percent sign must itself be encoded as %25. The tool checks this before decoding and reports the problem in plain language.

Is my data sent anywhere?

No. Everything happens in your browser with JavaScript only. Nothing you type is sent to a server, stored, or logged.

More from the codex

You’re here

URL Encoder/Decoder

Encode and decode URLs, components, and query strings.

Live

Citation Generator

Accurate citations in APA 7th, MLA 9th, Chicago, and Harvard. Websites, books, journals, YouTube — with URL, DOI, and ISBN auto-lookup.

Open tool →
Live

GPA Calculator

Semester and cumulative GPA with weighted scales, plus a planner that tells you exactly what you need to hit your target.

Open tool →
Live

Word Counter

Count words and estimate reading time instantly.

Open tool →
Live

Grade Calculator

“What do I need on my final?” — answered.

Open tool →
Live

Pomodoro Timer

Focus sessions with clean, simple timing.

Open tool →
Live

Random Student Picker

Fair, no-repeat classroom picker for teachers.

Open tool →
Live

Scientific Calculator

Trig, logs, powers, factorials — full keypad.

Open tool →
Live

Percentage Calculator

Percent of, percent change, increase/decrease.

Open tool →
Live

Unit Converter

Length, weight, temperature, and more.

Open tool →
Live

Typing Speed Test

Measure your words per minute and accuracy.

Open tool →
Live

Student Budget Calculator

Plan spending on a student budget.

Open tool →
Live

Attendance Calculator

How many classes can you miss and still pass?

Open tool →
Live

Tip Calculator

Split the bill fairly in seconds.

Open tool →
Live

Password Generator

Strong, random passwords on demand.

Open tool →
Live

Case Converter

UPPER, lower, Title Case and more.

Open tool →
Live

Countdown Timer

Count down to exams, deadlines, events.

Open tool →
Live

Flashcard Maker

Spaced-repetition flashcards for any subject.

Open tool →
Live

Resume Builder

Clean templates, export to PDF.

Open tool →
Live

PDF Tools

Merge and compress PDFs for submissions.

Open tool →
Live

Timetable Maker

Build your weekly class schedule.

Open tool →
Live

Text-to-Speech Reader

Hear your essay read aloud for proofreading.

Open tool →
Live

Age Calculator

How old are you, exactly? Years, months, days.

Open tool →
Live

Date Calculator

Days between dates, plus date arithmetic.

Open tool →
Live

BMI Calculator

Body mass index with healthy-range guidance.

Open tool →
Live

Loan Calculator

Monthly payments, interest, amortization table.

Open tool →
Live

Compound Interest Calculator

Project savings growth with contributions.

Open tool →
Live

QR Code Generator

Free QR codes for URLs and text. PNG download.

Open tool →
Live

JSON Formatter

Validate, format, and minify JSON.

Open tool →
Live

Lorem Ipsum Generator

Placeholder text by paragraph or word.

Open tool →
Live

Periodic Table

Interactive table of all 118 elements.

Open tool →
Live

Time Zone Converter

Convert times across zones; plan meetings.

Open tool →
Live

Color Picker

Hex/RGB/HSL converter, palettes, contrast checker.

Open tool →
Live

Random Number Generator

Random numbers, dice, coin flip, shuffler.

Open tool →
Live

Stopwatch

Precision stopwatch with lap times.

Open tool →
Live

Base64 Encoder

Encode and decode Base64, URL-safe too.

Open tool →
Live

Fancy Text Generator

Bold, italic, script and 12 more unicode styles.

Open tool →
Live

Invoice Generator

Professional invoices with tax, discounts, print.

Open tool →
Live

Unix Timestamp Converter

Convert timestamps to dates and back.

Open tool →
Live

Metronome

Steady beats with tap tempo, 30-240 BPM.

Open tool →
Live

Full-Page Image Printer

Print images full-page, straight from your browser.

Open tool →