Abstract In multiuser MIMO systems, the base station schedules transmissions to a group of users simultaneously. Since the data transmitted to each user are different, in order to avoid the inter-user interference, a transmit preprocessing technique which decomposes the multiuser MIMO downlink channel into multiple parallel independent single-user MIMO channels can be used. When the number of users is larger than the maximum that the system can support simultaneously, the base station selects a subset of users who have the best instantaneous channel quality to maximize the system throughput. Since the exhaustive search for the optimal user set is computationally prohibitive, a low complexity scheduling algorithm which aims to maximize the capacity upper bound is proposed. Simulation results show that the proposed scheduling algorithm achieves comparable total throughput as the optimal algorithm with much lower complexity.