URL validation boundary · Updated November 6, 2026
Valid URL Checker: Test Syntax, Host, Port, and Encoding
Paste a URL to see whether it parses and which part fails. A URL can be structurally parseable while still containing an invalid percent escape, forbidden whitespace, or a host/port problem. This checker reports the parser result and the first validation issue instead of treating every failure as one generic “invalid URL.”
What the checker distinguishes
| Input | Result | Reason |
|---|---|---|
https://example.com/a%20b | Valid | Percent escape is complete and the URL parses. |
https://example.com/a%2 | Invalid | Percent escape is truncated; it needs two hexadecimal digits. |
https://example.com/a b | Invalid | Raw space is not valid URL input; encode the component first. |
https://example.com:bad/ | Invalid | The port is not numeric, so the URL constructor rejects it. |
Why “valid” is not the same as “safe”
Parsing answers a syntax question. It does not approve a destination, guarantee that a server exists, or decide whether a redirect is trustworthy. Use the result to locate malformed input, then apply your application’s allow-list and network policy separately.
Rerun the evidence
Download the Node regression script, fixtures and recorded results. Run node valid-url-regression.cjs with Node v24.19.0 or a newer compatible Node release.
For encoding a valid component, use the URL encoder; for decoding an already escaped URL, use the URL decoder.