The builder parses your base URL with the browser's own URL engine, so values are URL-encoded correctly — spaces become %20 and symbols survive the trip — and the parameters are joined with the right ? and & punctuation. Because it uses the standard searchParams mechanism, each UTM key is set rather than blindly appended: if your link already carries, say, a utm_source, the builder replaces that one with your new value instead of producing a duplicate key. Any non-UTM query parameters already on the link are preserved.
There is a checkbox to force all parameter values to lowercase, which is on by default and recommended. The whole link is constructed in your browser and shown ready to copy; nothing is shortened, stored, or logged.