  We implement methods that efficiently impose integrality -- i.e., the
condition that the coefficients of characters in the partition function must be
integers -- into numerical modular bootstrap. We demonstrate the method with a
number of examples where it can be used to strengthen modular bootstrap
results. First, we show that, with a mild extra assumption, imposing
integrality improves the bound on the maximal allowed gap in dimensions of
operators in theories with a $U(1)^c$ symmetry at $c=3$, and reduces it to the
value saturated by the $SU(4)_1$ WZW model point of $c=3$ Narain lattices
moduli space. Second, we show that our method can be used to eliminate all but
a discrete set of points saturating the bound from previous Virasoro modular
bootstrap results. Finally, when central charge is close to $1$, we can
slightly improve the upper bound on the scaling dimension gap.
