In one embodiment, a VoIP device operable to estimate an upstream data rate for a network device is provided. The VoIP device includes a transceiver operable to transmit VoIP packets to and receive VoIP packets from the network device; and a logic engine configured to initiate a series of simulated VoIP streams through the network device to a VoIP call destination, the logic engine being further configured to determine when at least one of the simulated VoIP streams in the series is unsuccessful, the logic engine being further configured to estimate the upstream data rate for the network device based upon a data rate for those simulated VoIP streams preceding the unsuccessful simulated VoIP stream.