I've been replacing chains every 1500 miles, but recently I've done some careful and geeky chain-stretch measurements just for kicks.
I hang the old chain vertically and adjacent to a high quality meter stick (with two nails) and take digital pictures at the top and bottom of the meter stick (using a close-up lens setting). The digital pictures are then imported into "photoshop" or "paint" so that I can draw lines to accurately measure the the position of a chosen rivet at the top and bottom of the chain. You can measure the position of a rivet to about 1/64 inch over a distance of 36 inches for a measuring tolerance of (1/64)/36 = 0.04 %
The chains I've been throwing out only stretch about 0.1 %, which seems pretty amazing for 1500 miles. Zinn recommends changing at 0.5%. It looks as though I've been throwing out good chains. I'm 160 lbs, ride only on clean dry roads, and use White Lightning after every ride.