The axial enrichment distribution of boiling water reactor fuel is optimized to improve uranium utilization subject to constraints on thermal margins. It is assumed that the reactor is operated under the Haling strategy, so that determination of the enrichment distribution can be decoupled from the poison management. This nonlinear optimization problem is solved using a method of approximation programming, where each iteration step is formulated in terms of linear goal programming to handle infeasible problems. The core is represented by an axial one-dimensional model. The average enrichment of a two-region fuel can be slightly reduced by increasing the enrichment of the lower half rather than the upper half. The optimal solutions for a 24-region fuel, in which the enrichments of individual nodes can differ from one another, display double-humped enrichment distributions. The natural uranium blanket design is also investigated, and it is concluded that blanketed fuel is practically optimal using the Haling strategy.