A system (105, 205), comprising: a transceiver (110, 210) configured to communicate multicast frames to a plurality of client devices (132, 134, 136; 232, 234, 236) in a multicast group; and a controller (120, 220) configured to: determine, for each of the plurality of client devices (132, 134, 136; 232, 234, 236), whether a predetermined time has passed since the transceiver (110, 210) most recently sent a unicast transmission to the respective one of the plurality of client devices (132, 134, 136; 232, 234, 236); instruct the transceiver (110, 210) to transmit a unicast frame to one or more of the plurality of client devices (132, 134, 136; 232, 234, 236), for which it has been determined that the predetermined time has passed since the transceiver (110, 210) most recently sent a unicast transmission to the respective one of the plurality of client devices (132, 134, 136; 232, 234, 236); compute data rates for each of the one or more of the plurality of client devices (132, 134, 136; 232, 234, 236) based on the transmission of the unicast frame to the respective client device (132, 134, 136; 232, 234, 236); determine a lowest data rate among computed data rates for the plurality of client devices (132, 134, 136; 232, 234, 236); and instruct the transceiver (110, 210) to communicate the multicast frames to the plurality of client devices (132, 134, 136; 232, 234, 236) at the determined lowest data rate. a transceiver (110, 210) configured to communicate multicast frames to a plurality of client devices (132, 134, 136; 232, 234, 236) in a multicast group; and a controller (120, 220) configured to: determine, for each of the plurality of client devices (132, 134, 136; 232, 234, 236), whether a predetermined time has passed since the transceiver (110, 210) most recently sent a unicast transmission to the respective one of the plurality of client devices (132, 134, 136; 232, 234, 236); instruct the transceiver (110, 210) to transmit a unicast frame to one or more of the plurality of client devices (132, 134, 136; 232, 234, 236), for which it has been determined that the predetermined time has passed since the transceiver (110, 210) most recently sent a unicast transmission to the respective one of the plurality of client devices (132, 134, 136; 232, 234, 236); compute data rates for each of the one or more of the plurality of client devices (132, 134, 136; 232, 234, 236) based on the transmission of the unicast frame to the respective client device (132, 134, 136; 232, 234, 236); determine a lowest data rate among computed data rates for the plurality of client devices (132, 134, 136; 232, 234, 236); and instruct the transceiver (110, 210) to communicate the multicast frames to the plurality of client devices (132, 134, 136; 232, 234, 236) at the determined lowest data rate. determine, for each of the plurality of client devices (132, 134, 136; 232, 234, 236), whether a predetermined time has passed since the transceiver (110, 210) most recently sent a unicast transmission to the respective one of the plurality of client devices (132, 134, 136; 232, 234, 236); instruct the transceiver (110, 210) to transmit a unicast frame to one or more of the plurality of client devices (132, 134, 136; 232, 234, 236), for which it has been determined that the predetermined time has passed since the transceiver (110, 210) most recently sent a unicast transmission to the respective one of the plurality of client devices (132, 134, 136; 232, 234, 236); compute data rates for each of the one or more of the plurality of client devices (132, 134, 136; 232, 234, 236) based on the transmission of the unicast frame to the respective client device (132, 134, 136; 232, 234, 236); determine a lowest data rate among computed data rates for the plurality of client devices (132, 134, 136; 232, 234, 236); and instruct the transceiver (110, 210) to communicate the multicast frames to the plurality of client devices (132, 134, 136; 232, 234, 236) at the determined lowest data rate.