Static codes are simple and bulletproof. Dynamic codes change destination and count every scan. Here is when each one wins.