Achieving widespread population immunity by voluntary vaccination poses a major challenge for public health administration and practice. The situation is complicated even more by imperfect vaccines. How the vaccine efficacy affects individuals vaccination behavior has yet to be fully answered. To address this issue, we combine a simple yet effective game theoretic model of vaccination behavior with an epidemiological process. Our analysis shows that, in a population of selfinterested individuals, there exists an overshooting of vaccine uptake levels as the effectiveness of vaccination increases. Moreover, when the basic reproductive number, R0, exceeds a certain threshold, all individuals opt for vaccination for an intermediate region of vaccine efficacy. We further show that increasing effectiveness of vaccination always increases the number of effectively vaccinated individuals and therefore attenuates the epidemic strain. The results suggest that number is traded for efficiency: although increases in vaccination effectiveness lead to uptake drops due to free-riding effects, the impact of the epidemic can be better mitigated.