A method implemented by a wireless transmitter (110, 120) of a wireless communication network, the method comprising: obtaining a set of information bits to be transmitted wirelessly using one or more radio resource block groups, RBGs, wherein the number of bits in the set of information bits is referred to as the desired number of bits; determining a modulation type for the wireless transmission that maximizes an amount of information bits per RBG based on a channel quality associated with the one or more RBGs and the modulation type; estimating a total number of bits for transmission based on the desired number of bits, a number of cyclic redundancy check, CRC, bits, and a number of padding bits; determining a number of the one or more RBGs to use for transmission by accumulating the maximum amount of information bits per RBG until the accumulated number of information bits is greater than or equal to the estimated total number of bits for transmission; estimating a resource element efficiency by comparing the estimated total number of bits for transmission and the determined number of RBGs for transmission; determining a modulation and coding scheme, MCS, by using a table that associates an MCS index with a modulation order, a target code rate, and a spectral efficiency and selecting an MCS index associated with a spectral efficiency closest to and less than or equal to the estimated resource element efficiency; calculating a transport block size, TBS, using the selected MCS index and associated modulation order and target code rate; adjusting the value of the calculated TBS based on a difference between the calculated TBS and the desired number of bits; and transmitting the set of information bits using the adjusted TBS. obtaining a set of information bits to be transmitted wirelessly using one or more radio resource block groups, RBGs, wherein the number of bits in the set of information bits is referred to as the desired number of bits; determining a modulation type for the wireless transmission that maximizes an amount of information bits per RBG based on a channel quality associated with the one or more RBGs and the modulation type; estimating a total number of bits for transmission based on the desired number of bits, a number of cyclic redundancy check, CRC, bits, and a number of padding bits; determining a number of the one or more RBGs to use for transmission by accumulating the maximum amount of information bits per RBG until the accumulated number of information bits is greater than or equal to the estimated total number of bits for transmission; estimating a resource element efficiency by comparing the estimated total number of bits for transmission and the determined number of RBGs for transmission; determining a modulation and coding scheme, MCS, by using a table that associates an MCS index with a modulation order, a target code rate, and a spectral efficiency and selecting an MCS index associated with a spectral efficiency closest to and less than or equal to the estimated resource element efficiency; calculating a transport block size, TBS, using the selected MCS index and associated modulation order and target code rate; adjusting the value of the calculated TBS based on a difference between the calculated TBS and the desired number of bits; and transmitting the set of information bits using the adjusted TBS.