A method for performing forward error correction, FEC, avoidance in a receiver of a communications device, the method comprising: determining (404, 504) a reliability metric value using one or more of an Effective Exponential Signal-to-Noise Mapping, EESM, measurement, or a mutual information measurement of a received radio frequency, RF, channel, with the measurement being made over one or more received code blocks wherein the reliability metric value increases with increasing probability of decoding success; determining (406, 508) a code block reliability threshold value; comparing (410, 510) the reliability metric value to the code block reliability threshold value; if the reliability metric value is below the code block reliability threshold, disabling (412, 512) the FEC decoder and sending (414, 514) a HARQ NAK to a transmitter in a communications network; if the reliability metric value is above the code block reliability threshold, enabling the FEC decoder, using the FEC decoder to decode the received code blocks and performing (418, 518) an integrity check on decoded code blocks, if said integrity check passes, updating said code block reliability threshold value and sending a hybrid automatic request, HARQ, positive acknowledgment, ACK, to a transmitter in a communications network; if said integrity check fails, increasing said code block reliability threshold value, and sending (414, 514) a HARQ negative acknowledgement, NAK, to the transmitter. determining (404, 504) a reliability metric value using one or more of an Effective Exponential Signal-to-Noise Mapping, EESM, measurement, or a mutual information measurement of a received radio frequency, RF, channel, with the measurement being made over one or more received code blocks wherein the reliability metric value increases with increasing probability of decoding success; determining (406, 508) a code block reliability threshold value; comparing (410, 510) the reliability metric value to the code block reliability threshold value; if the reliability metric value is below the code block reliability threshold, disabling (412, 512) the FEC decoder and sending (414, 514) a HARQ NAK to a transmitter in a communications network; if the reliability metric value is above the code block reliability threshold, enabling the FEC decoder, using the FEC decoder to decode the received code blocks and performing (418, 518) an integrity check on decoded code blocks, if said integrity check passes, updating said code block reliability threshold value and sending a hybrid automatic request, HARQ, positive acknowledgment, ACK, to a transmitter in a communications network; if said integrity check fails, increasing said code block reliability threshold value, and sending (414, 514) a HARQ negative acknowledgement, NAK, to the transmitter. if said integrity check passes, updating said code block reliability threshold value and sending a hybrid automatic request, HARQ, positive acknowledgment, ACK, to a transmitter in a communications network; if said integrity check fails, increasing said code block reliability threshold value, and sending (414, 514) a HARQ negative acknowledgement, NAK, to the transmitter.