It would be useful if it's possible to append the campaign-ids not with a ? or &, but with a different seperator that will not influence the URL.
F.e. domain.tld#cid=campaign
The search engines would read only the part to the hash sign.
It also would be easier to assign campaign codes to the urls as the check if there is another question mark within the url can be dropped.