Taking a ride on the Severn Beach line a few weeks back, it appeared to be quite a tough one. Stations a few minutes apart and seemingly most people buying their tickets on the train makes for non-stop activity for the guard.
Indeed - there are no facilities to purchase tickets before boarding at any station other than Temple Meads. Redland and Clifton Down did have "parking meter" type ticket machines but these were vandalised and then not replaced.
In addition to the above, St. Andrews Road is a request stop on some services and not at all on others. Also, the turn around time at Severn Beach is very tight on a few services. Between 2 and 4 minutes I think, so if a train is 5 mins late arriving it will then be late for its next journey (& delay the next train that's waiting at Clifton Down)