One thing my local yarn shop does, if you finish the project in a reasonable period of time, a month or two, they will take back full (like new) skeins or unwound hanks if you ended up not needing them. So I always buy extra. (Okay and I never return the extra either, but it is a thought!)