The present model focuses on how people decide to get vaccinated, based on their beliefs and costs and on the public information concerning the disease severity, that in turn depends on the vaccination coverage. This interplay between beliefs and outcomes gives rise to a dynamical learning process, whose steady state is a self-fulfilling equilibrium. Although equilibrium levels of immunization and disease severity do not depend on beliefs, even in equilibrium heterogeneous people interpret the severity/coverage relation in different ways. These differences, together with the structural parameters of the model, have important implications for the stability of the equilibrium, finally impinging on the efficacy of policies aimed at correcting the existing state. In fact, we find that when the equilibrium disease severity is too high and immunization is suboptimal, mandatory vaccination and nudging can be valid options for fighting vaccination hesitancy (while moral suasion looks less effective); in addition, some policy mixes turn out to be very effective. However, given the interaction between beliefs, learning, and policies, the wished policy goal cannot be achieved immediately with precision, due to possible instability of equilibria. This supports the idea that immunization must be encouraged by using mixes of persistent policies.