Agricultural monitoring is an important application of wireless sensor networks (WSNs) where energy-efficiency and reliability are two essential performance measures. The extended lifetime of a network is of limited use if the acquired reliability does not meet the application requirement. In order to improve the reliability, it is necessary to reduce congestion because of the inherent correlation between reliability and congestion. Existing Congestion control algorithms, found in WSN literature, are reactive. After formation and detection of congestion, these algorithms try to reduce the congestion. In this paper, we present a congestion aware routing protocol that avoids congestion formation proactively and as a result, it improves data delivery success rate in WSNs deployed to gather agricultural data. Appropriate routes are selected based on location, energy and congestion information of neighbours as well as based on the location information of the base station. Experimental results show that the proposed method is energy-efficient and at the same time, it achieves high packet success.DOI: http://dx.doi.org/10.3329/pa.v21i1-2.16768 Progress. Agric. 21(1 & 2): 195 - 204, 2010