It often assumed - sometimes tacitly - that cells use their enzyme resources economically. This hypothesis can be studied by analysing enzyme requirements in kinetic models. I discuss models in which enzyme levels must realize a given flux distribution. The search for cost-optimal enzyme and metabolite levels can be formulated as a convex optimization problem. The enzyme profiles are shaped by opposing tendencies: a need for sufficient saturation with substrate, and an avoidance of small thermodynamic forces. The resulting prediction of metabolite and enzyme levels can complement constraint-based approaches for flux prediction, such as Resource Balance Analysis.