Pediatric immunization is important for preventing potentially life-threatening diseases in children. Over time, the number of recommended pediatric vaccines has increased and is likely to increase further as new vaccines are developed. Given the different number of doses for available vaccines and various constraints (e.g., the appropriate age for each dose of a vaccine or the time between doses), it is challenging to develop a recommended vaccination schedule or a catch-up schedule when a child falls behind on one or more vaccinations.We developed an integer programming optimization model, enabled by Python programming and embedded into an Excel-based decision tool, to recommend childhood vaccination schedules or personalized catch-up schedules. The model recommends a vaccination schedule that balances the goal of being as close as possible to the clinically-indicated dosing schedules and the goal of minimizing clinic visits, and gives users the ability to trade off between these two goals. We illustrated the broad applicability of our proposed model with commonly-faced vaccine scheduling challenges in the United States.The illustrative computational case study confirms our model's ability to create personalized schedules based on each child's age and vaccination history, and to adjust appropriately when a new vaccine becomes available.The model presented in this paper fills the need for an easy-to-use tool to recommend vaccination schedules for de novo and catch-up purposes. It provides straightforward recommendations that can be easily used by physicians, is flexible to handle the requirements varying by region, and can be updated as new vaccines are approved for use.