Free URL Builder

Construct URLs interactively with scheme, host, path, query parameters, and hash.

How It Works

  1. Choose scheme and host: Select a protocol (http, https, ftp) and enter the target domain.
  2. Add the path and query parameters: Type the path, then add key-value pairs for query parameters as needed.
  3. Add a fragment (optional): Append an anchor or hash that points to a specific section of the page.
  4. Copy the assembled URL: The generated URL updates live. Copy it to use in code, marketing, or testing.

Why Use a URL Builder?

Assembling URLs by hand is error-prone, a missing slash, an unencoded space, or a lost query parameter can break deep links, API calls, or redirects. This URL builder ensures each component is properly placed and encoded, producing a valid URL every time. It's ideal for creating tracked marketing links, constructing API endpoints during development, assembling deep links for email campaigns, and documenting URL structures.

Features

Frequently Asked Questions

What parts make up a URL?

A full URL has: scheme (https), host (example.com), optional port (:8080), path (/api/v1), query (?key=value), and fragment (#section). This builder covers every component.

Does it handle special characters?

Yes. Spaces, accented letters, symbols, and other non-ASCII characters in query parameter values are URL-encoded automatically so the resulting URL is valid in any browser or API client.

Do URL parameters affect SEO?

Tracking parameters (like UTM tags) generally don't affect organic search rankings. To avoid duplicate-content penalties when many tagged URLs exist, ensure your canonical tag points to the clean version of each page.

Anatomy of a URL, component by component

The grammar that defines every URL on the web lives in RFC 3986 «Uniform Resource Identifier (URI): Generic Syntax» (Berners-Lee, Fielding, Masinter, January 2005). Browsers actually use a slightly more forgiving variant defined in the WHATWG URL Living Standard. Both agree on the components:

Percent-encoding: the + versus %20 trap

RFC 3986 §2.3 defines the unreserved characters that never need encoding: A-Z a-z 0-9 - . _ ~. Everything else, when it appears as data inside a URL component, becomes %XX where XX is the byte's hex value. Multi-byte UTF-8 characters expand to multiple percent-triplets: é (U+00E9, UTF-8 C3 A9) encodes as %C3%A9. The classic gotcha is the space character: in a regular URL path or fragment, space encodes as %20; in form-encoded query strings (the application/x-www-form-urlencoded algorithm shared by HTML forms and the WHATWG query-string serialiser), space encodes as +. A server decoding form data converts + back to space; a server treating the query as a generic URI does not. Mixing the two conventions silently corrupts data. The safe pattern in JavaScript: use new URLSearchParams for queries and encodeURIComponent for individual values; the spec compliance is taken care of for you.

Where you actually need a URL builder

Common mistakes

More frequently asked questions

What is the maximum length of a URL?

RFC 3986 sets no limit. In practice: browsers cap at about 2,000 characters for the address bar (Internet Explorer 11 was 2,083; Chrome and Firefox tolerate longer but truncate display); most CDNs and proxies cap at 4,096 or 8,192; servers like Apache and Nginx default to 8,192 bytes for the request line. If you need more than 2,000 characters, switch to POST body.

Can I include the same query parameter multiple times?

Yes. ?tag=red&tag=blue&tag=green is valid. How the server interprets it depends on the framework: Express / Node.js parses to req.query.tag = ['red', 'blue', 'green']; PHP needs the bracket convention ?tag[]=red&tag[]=blue; Rails parses to an array if you use tag[] brackets. The URLSearchParams.getAll('tag') method always returns all values as an array regardless of bracket style.

Do query parameters affect SEO?

Tracking parameters (UTM, fbclid, gclid) generally do not affect organic search rankings. The risk is duplicate-content indexing: a tagged URL and its clean version look like two different pages to a crawler. The fix is a <link rel=\"canonical\" href=\"clean-url\"> tag pointing every tagged variant at the same canonical URL.

What is a URI Template, and should I use one?

RFC 6570 (March 2012) defines URI Templates: a syntax for parameterised URLs with placeholders. They're used in OpenAPI / Swagger specs, JSON Hyper-Schema, and some HATEOAS APIs. For everyday URL construction, plain string concatenation through this builder is simpler; URI Templates shine when documenting an API surface and generating client SDKs.

Is anything sent to a server?

No. Every component you type, the encoding, and the final URL are constructed in your browser's JavaScript. No network call is made to assemble the URL. Open the Network tab in DevTools and try the tool: you will see zero outgoing requests during construction.

Related Tools

URL Encoder URL Parser QR Code Generator Slug Generator