Follow-up: Turns out it boils down to the aforementioned issue with the GA.js reporting versus the urchin.js reporting.
Typical urchin.js _utmz cookie value:
Code:
... utmctr=keyword+keyword2|utmcmd=organic
Typical GA.js _utmz cookie value:
Code:
... utmctr=keyword%2Bkeyword2|utmcmd=organic
urchin.js just passes the raw plus sign delimiter, but GA.js encodes it (thence, when the urchin.js script picks up the cookie, it passes the encoded plus sign and Google happily stores the
keyword+keyword2 value as one long keyword).