# Query String Builder

Canonical: https://herebetools.com/query-builder

Build and edit URL query parameters with encoding and duplicate-key support

Build query strings from editable name and value rows, or import an HTTP or HTTPS URL to inspect its parameters. Duplicate names and empty values are preserved. Spaces encode as plus signs, and literal plus signs encode as %2B. Importing a complete URL retains its fragment. This tool edits strings locally and does not fetch the URL.

## Questions and answers

### Can I use the same parameter name more than once?

Yes. Add multiple rows with the same name to preserve repeated parameters such as tag=json&tag=tools.

## Related tools

- [URL Encode](https://herebetools.com/url-encode): Percent-encode and decode URLs and query strings
- [URL Inspector](https://herebetools.com/url-validate): Parse and inspect URL components and query params
- [cURL Converter](https://herebetools.com/curl): Convert cURL to fetch, axios, or Python

Tool processing runs in your browser.

## How to use it

1. Import a URL or query string, or start with a base URL and add parameter rows.
2. Edit names and values. Repeat names for multiple values, or uncheck a row to leave it out.
3. Choose + or %20 for spaces, then copy the encoded URL.

## Example

Input:

```text
Base URL: https://example.com/search
q: snow + ice
tag: json
tag: tools
```

Output:

```text
https://example.com/search?q=snow+%2B+ice&tag=json&tag=tools
```

## Behavior and limits

Imports do not fetch the URL. Duplicate names, empty values, and URL fragments are preserved. Importing or editing parameters normalizes their encoding, so it can change a signed URL. The receiving API decides which parameter conventions it accepts.

## Sources and specifications

- [MDN — URLSearchParams](https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams)

[Privacy policy](https://herebetools.com/privacy-policy) · [About](https://herebetools.com/facts) · [Topics](https://herebetools.com/topics)
