We go 30 days on residential bids only. Don't like putting a cap on the commercial ones though, and here's why. I've experienced several times exactly what happened to you. Gave a bid, 6 months later I call to follow up and PM says:
A.) had the work done, but it was poor quality. When can you schedule us?
B.) We haven't made a decision yet. (so I help them with that)
C.) We didn't have room on our budget last year(for whatever reason)
Most will accept that there's a small percentage increase in price after a year goes by. But why shut the door on potential customers if you don't have to? Of course if the job has changed dramatically since you bid it, then there's going to be an increase, and you need to tell them that.