The intense theoretical and experimental interest in topological insulators and semimetals has established band structure topology as a fundamental material property. Consequently, identifying band topologies has become an important, but often challenging problem, with no exhaustive solution at the present time. In this work we compile a series of techniques, some previously known, that allow for a solution to this problem for a large set of the possible band topologies. The method is based on tracking hybrid Wannier charge centers computed for relevant Bloch states, and it works at all levels of materials modeling: continuous k.p models, tight-binding models and ab initio calculations. We apply the method to compute and identify Chern, Z2 and crystalline topological insulators, as well as topological semimetal phases, using real material examples. Moreover, we provide a numerical implementation of this technique (the Z2Pack software package) that is ideally suited for high-throughput screening of materials databases for compounds with non-trivial topologies. We expect that our work will allow researchers to: (a) identify topological materials optimal for experimental probes, (b) classify existing compounds and (c) reveal materials that host novel, not yet described, topological states.