The optimal design of a veterinary vaccination programme depends on both the characteristics of the vaccine and the epidemiology of the pathogen or parasite. Relevant vaccine characteristics are the proportion of those vaccinated that are initially protected, the duration of protection and the coverage achieved by the vaccination programme. The most important epidemiological parameter is the basic reproduction number, R0. Mathematical theory can integrate this information to address such questions as: whether it is possible to eliminate an infection; what proportion of hosts must be vaccinated to achieve this: what age should hosts first be vaccinated; and at what interval should hosts be revaccinated? Examples of rabies in foxes and foot-and-mouth disease in cattle suggest that theory can be used to guide the design of vaccination programmes.