All tools URL Query Builder ● Live Developer Tools

How URL Query Builder works

  1. Enter the base URL you're building, e.g. https://example.com/search.
  2. List each query parameter as key=value, one per line, in the parameters field.
  3. Review the assembled, properly encoded URL in the output box.
  4. Copy the URL for use in a request, link, or test.
  • Build a search URL with query filters like q, page, and sort without hand-encoding spaces.
  • Assemble an API request URL for testing in a browser or a tool like curl.
  • Construct a link with several tracking or filter parameters at once from a plain list.
  • Quickly rewrite an existing URL's query string by editing the key=value list instead of the raw string.

The URL is assembled entirely in your browser using standard URL and URLSearchParams APIs. Nothing is uploaded.

  • Repeated parameter keys keep only the last value rather than producing multiple entries with the same name.
  • Doesn't validate that the base URL itself is well-formed beyond basic query string appending.
  • Doesn't preserve or edit an existing query string already present in the base URL beyond appending to it.

URL Query Builder

URL Query Builder turns key=value lines into a properly encoded query string. It helps test API endpoints, search URLs, filters, and analytics links.

URL Query Builder Runs locally

URL Query Builder

Build or rewrite a URL query string from key=value pairs. Everything runs locally in this tab.

Output
https://example.com/search?q=browser+tools&page=1
Guide

How to use

  1. Enter the base URL you're building, e.g. https://example.com/search.

  2. List each query parameter as key=value, one per line, in the parameters field.

  3. Review the assembled, properly encoded URL in the output box.

  4. Copy the URL for use in a request, link, or test.

Scenarios

Use cases

  • Build a search URL with query filters like q, page, and sort without hand-encoding spaces.

  • Assemble an API request URL for testing in a browser or a tool like curl.

  • Construct a link with several tracking or filter parameters at once from a plain list.

  • Quickly rewrite an existing URL's query string by editing the key=value list instead of the raw string.

Good to know

Limitations & Privacy

Private by design

The URL is assembled entirely in your browser using standard URL and URLSearchParams APIs. Nothing is uploaded.

  • Repeated parameter keys keep only the last value rather than producing multiple entries with the same name.

  • Doesn't validate that the base URL itself is well-formed beyond basic query string appending.

  • Doesn't preserve or edit an existing query string already present in the base URL beyond appending to it.

FAQ

Frequently asked questions

Is URL Query Builder free to use?

Yes. The tool is free and runs directly in your browser with no account required.

Does this tool upload my data?

No. The URL is assembled locally in the browser tab and is not sent to a server.

What is this tool best for?

Building or rewriting a URL's query string from a plain list of key=value pairs, without manually percent-encoding each value.

How do I enter the parameters?

Enter the base URL in the main field, then list each parameter as key=value on its own line in the second field, e.g. 'q=browser tools' and 'page=1'.

Does it URL-encode the values automatically?

Yes — parameters are built with the browser's URLSearchParams API, so spaces, ampersands, and other special characters in values are properly percent-encoded in the output.

What happens if I use the same key twice?

The current implementation keeps the last value for a repeated key, since each key=value line is set on the same params object — it doesn't produce duplicate parameters.

Can I use this to test an API request URL?

Yes — it's useful for assembling a query string for a GET request or search URL to paste into a browser tab, Postman, or curl command.

Does it work if my base URL already has query parameters?

Yes — the tool detects an existing '?' in the base URL and appends the new parameters with '&' instead of starting a new query string.