URL

Query String Builder / Parser

Work with percent encoding explicitly and choose whether plus represents a form-style space during parsing.

Loading local tool…

How this tool works

A query is a sequence of name/value components, but application frameworks disagree on how repeated names map to arrays, scalars, or the last value. This tool preserves the ordered pairs instead of choosing an application model.

Builder mode applies encodeURIComponent to each key and value. Parse mode retains raw components beside decoded text and reports malformed percent sequences instead of silently replacing them.

Examples

  • Build tag=api&tag=qa.
  • Round-trip a Unicode search term.
  • Distinguish q=a+b from q=a%2Bb with plus handling disabled.

Common use cases

API request fixtures
Redirect debugging
Repeated-filter review

Interoperability checks

  • Confirm how the target framework handles duplicate names.
  • Decide whether blank and missing values are distinct.
  • Encode components once; double encoding turns percent signs into %25.
  • Preserve the URL fragment boundary when parsing a full URL.

Failure case: Query Strings

Invalid/failure example

Distinguish q=a+b from q=a%2Bb with plus handling disabled.

Expected: Builder mode applies encodeURIComponent to each key and value. Parse mode retains raw components beside decoded text and reports malformed percent sequences instead of silently replacing them.

Related guides

Official references

FAQ

Does this tool send the pasted data or execute an API request?

No. Analysis runs in this browser tab. The tool does not call pasted URLs, resolve remote references, or submit the input to a DevPouch processing endpoint.

Are repeated keys preserved?

Yes. Parsing returns rows in source order, and build mode allows multiple rows with the same key.

Does plus always mean space?

No. Plus-to-space behavior comes from application/x-www-form-urlencoded parsing. Percent decoding by itself does not universally reinterpret a literal plus.

Related tools