A Zipf's law is a probability distribution on the positive integers which decays algebraically. Such laws describe (approximately) a large class of phenomena. We formulate a model for such phenomena and, in terms of our model, give necessary and sufficient conditions for a Zipf's law to hold.