I've noticed that the coupons only print 24 hours before a connection that did not upgrade. Example:
Regional Flight without First Class at 6:00 AM
On line check in at 6:05 AM day prior; coupon does not print
Connection at 9:00 AM
Go back and reprint boarding pass at 9:05 AM day prior and coupon did print.
Coupon also printed in above case when upgrade occured after normal window. Example Gold upgrade sweep 3 nights before flight but upgrade occured just one day prior to flight. Online check in only showed 2 free bags since it didn't think you had been upgraded and coupon printed (even though upgrade had occured).