Due to the effects of uncertain factors such as seasonal weather and plant/animal diseases, the output of agricultural production is uncertain given certain agricultural inputs. This paper addresses the issue of coordinating agri-food chain with perishable goods by revenue-sharing (RS) contract when both output and demand are random. Following a RS contract, a supplier decides on agricultural input (e) and deliveries all goods with a price (ω) lower than unit production cost to the retailer while a retailer decides on the retail price (p) and return 1–Φ share (percentage) of its revenue to the supplier. For such a contract, the necessary condition of coordinating the chain is that the expected revenue function is concave. Under the channel coordination, the relationship between RS contract parameters ω and Φ as well as the range of Φ are given. For both output and demand random factor with uniform distribution, the concavity of the expected revenue function is presented. A numerical example illustrates the correctness of our analysis. The results of numerical example show that RS contract is able to coordinate the agri-food chain when the expected revenue function is concave. The results also show that the optimal decisions of p and e are closely related to the demand price elasticity and the range of Φ is widened when the expected output increases.