There was a church standing here in the 12th century when it is likely to have belonged to Amesbury Abbey. It was confirmed as belonging to Amesbury Priory in 1179 and so it would appear that there was a church by the mid 12th century, if not earlier. The present church is of knapped flint and freestone and consists of a chancel with a south vestry, an aisled nave and a west tower. Part of the north wall of an earlier nave survived until the 19th century. In the 13th century the chancel was rebuilt, possibly on a larger scale, and additional windows put in the nave and north aisle. Around 1500 the east window of the chancel was replaced by a larger triple lancet window, while early in the 16th century the tower was built. The church retains many 17th century fittings, including the altar table, pulpit and tower screen. In about 1692 a storm damaged the upper stages of the tower and these had to be rebuilt. It is probable that there was no resident minister from the 17th century until 1833, while in 1763 the church had no dedication. In 1831 the west gallery was either erected or built to replace an earlier one.
The congregation was substantial in the 19th century and on Census Sunday in 1851 there were 270 at morning service and 290 in the afternoon. In that year the church was extensively restored under J.W. Hugell. The chancel walls were restored, the chancel arch rebuilt, the south aisle widened, a north aisle built, the gallery removed and all the roofs renewed. A blocked 12th century doorway was removed from the northern wall of the nave and used to create a porch in the south aisle. The box pews with carved panels were cut down and rearranged. The church was then dedicated to All Saints. In the later 19th century numbers attending varied from 150 to 270 people. A vestry was built in 1973. Since 1956, when the sixth was added, there have been six bells in the tower. There were three in 1553 that were replaced or recast in 1602 and 1617, while two more, cast by John Lott, were added in 1654 and 1660. The parish registers, dating from 1591, other than those in current use, are held in the Wiltshire and Swindon Record Office.