It was built, on the site of an 11th-century church, in the 14th century and rebuilt around 1470. The tower and east window were paid for by John Shipward, four times Mayor of Bristol, who died in 1473, the tower being built by the mason Benedict (or Benet) Crosse. The site was on the banks of the River Frome, which was diverted at around this time to create Bristol Harbour. The clerestory was repaired after a storm in 1703. The aisle and east windows were restored in 1873.
The tower measures approximately 18 ft by 20 ft at its base, and rises to a total height of 152 ft. It originally contained six bells but these have been replaced over the years and the number increased to twelve. The tower is typical of Somerset churches, but with the addition of a "Gloucestershire crown" of arcaded battlements, pinnacles and open-work arcading.
Edmund Blanket, a 14th-century clothier and wool merchant, has a tomb on the north side of the church.
Another significant tomb is that of Martin Pring, who died at the age of 46 in 1627. He was a navigator, explorer and merchant and discovered what is now called Cape Cod Bay. The monument is draped with painted mermaids and mermen and verses to his exploits.