This document proposes an iterative subcarrier allocation algorithm for OFDMA systems that aims to improve system performance and quality of service. The algorithm begins with an initial assignment based on highest modulation rates and then iteratively distributes bits to other subcarriers and exchanges subcarriers between users to reduce total transmit power. Simulation results show the iterative algorithm achieves higher average bit SNR than existing algorithms and improves its performance over time.