URL encoder

Type text to percent-encode it. Component mode is for one query value or path segment (everything but letters, digits and - _ . ~ is escaped); Form mode writes spaces as + like an HTML form; Whole URL keeps the URL’s structure and only escapes what is invalid.

Encode a file:

Which encoding: component, form or whole URL

The same text is percent-encoded three different ways depending on where it goes, and languages pick different defaults. The string a b&c=d/é!'(x)*~, measured:

Python's urllib.parse.quote() is a common surprise: its default safe='/' leaves slashes unescaped (a%20b%26c%3Dd/%C3%A9…), so a value like a redirect path breaks the URL it is put into. Pass safe='' for a query value.

Decoding errors, explained

JavaScript's decodeURIComponent throws the same URIError: URI malformed for three different problems. This decoder tells them apart:

Double encoding is the other usual bug: a value encoded twice turns %20 into %2520, and after one decode you still see %20. When the decoded text still has % sequences, the page says so and offers to decode again. A + means a space only in form-encoded query strings; in a path or a Base64 value it is a literal plus, so the "+ means space" box can be turned off.

Render HTML to a PDF or an image

Shotmint is a screenshot and PDF API. POST https://shotmint.creasework.com/v1/pdf with {"html": "…"} returns a PDF, and /v1/screenshot returns a PNG of any URL or HTML, rendered in real Chromium (1 credit each; 25 free renders a month, then €5 for 2,000 that never expire). Add response=url to get a link instead of the bytes, or put the URL in a query string with the encoding above. Scripts, AI agents and Make or Zapier can get a key with a bare POST https://shotmint.creasework.com/v1/keys/free (no body, JSON reply); request bodies are described in openapi.json.

Get 25 free renders a month API docs

FAQ

Is my text uploaded? No. Encoding and decoding run in your browser and nothing is sent to a server, so tokens, API keys and private data stay on your device.

Is Base64 encryption? No. Anyone can decode it; it only turns bytes into text that survives email, JSON and URLs, and makes the data about 33% bigger.

Related tools: Base64 encoder, Base64 decoder, JWT decoder, URL decoder, Text to hex converter, Hex to text converter, HTML encoder, HTML entity decoder, JSON formatter, Image to Base64, Base64 to image.

Related tools

HTML Encode · Base64 Encode · Bulk URL to PDF · URL to PDF · URL encode / decode · URL to image · URL to Markdown · all free tools