Create correctly formatted campaign URLs locally in your browser.
This tool processes text locally. It does not open, fetch, validate remotely or save your destination or campaign values.
UTM parameters only provide information to analytics platforms that process them.
Destination URL
Use an absolute HTTP or HTTPS URL without credentials, backslashes, control characters or malformed percent escapes. Maximum 16,384 UTF-16 code units and 256 query segments. Surrounding whitespace is removed; controls are rejected even at the edges.
Campaign values (all optional)
Up to 2,048 UTF-16 code units per field. Surrounding whitespace is removed; case and internal spaces are preserved. Each non-empty field replaces every existing occurrence of that UTM name, matched without case sensitivity after decoding. Blank fields leave existing values unchanged. Other parameters, duplicates, path and fragment are preserved.
Generated URL
New values use standard query encoding: spaces become + and literal + becomes %2B. Existing query bytes are preserved, including empty segments. URL length counts UTF-16 code units, not bytes. Maximum generated length: 32,768 units and 256 total query segments. With no supplied fields, the URL is unchanged apart from surrounding whitespace.
Review before sharing. Changing query parameters can invalidate signed URLs or change destination behaviour. Original path/query/fragment text, including literal spaces, is preserved rather than normalised. This tool does not confirm safety, availability or analytics collection.
Create a QR code for this URL. Copy your URL first, then paste it there yourself. This link does not transfer it.