I have compared the following water sheets:
Palmer,
Bru'n Water, and
Kaiser. As far as I can tell, all the calculations are more or less the same, with one key difference, the total alkalinity. The total alkalinity drives the RA and so is probably the most important calculation on the sheet.
Total alkalinity is the most important single water parameter but as RA isn't really important at all except as a cursory means of comparing one water source to another its dependency on total alkalinity is really not a matter of importance.
Bru'n Water and Kaiser are the same and calculate Total Alkalinity based purely on bicarbonate as an input, whereas John Palmer uses PH in addition to the bicarbonate.
The first thing people need to understand (and all three of the gentlemen you mentioned do) is that the laboratory measures alkalinity - not bicarbonate. To measure bicarbonate requires some pretty hairy gear whereas the alkalinity test is very simple. If you go to the aquarium shop, do they sell you a bicarbonate test kit? No, they sell you an alkalinity test kit. Having measured the alkalinity the lab then calculates the bicarbonate and carbonate from the alkalinity and pH - that is where pH comes into it. The calculations are detailed in the sticky at
https://www.homebrewtalk.com/showthread.php?t=473408. I noticed a few years back that Ward Labs reports didn't quite check out, corresponded with them and found out that they were a)doing the alkalinity titration wrong and b) calculating bicarb and carb wrong. Fortunately this was only a problem when pH was above 8.2. They are now doing the titration right and the bicarbonate calculation is closer to being correct but the carbonate calculation is still off. As most people's reports show CO3-- < 1 that is not really a problem.
Has anyone else picked up on this difference? Is there a view as to which is more accurate and why?
Hell yes I've noticed the difference and complained for years that all the spreadsheets should be fixed to treat alkalinity correctly. Given the power of a modern laptop or smart phone there is really no excuse for this imprecision even though it be small in most cases. The real problem it causes is confusion to users of the programs.
What I used to hear was "You don't have to do all that. Most everybodys' water is at pH < 8 and alkalinity = 50*bicarbonate/61 or bicarbonate = 61*alkalinity/50 is close enough. Well everybody's water isn't < 8 especially, it seems, since this Flint business, but that may be confirmation bias on my part.
The problem as I see it is that the programs all want bicarbonate as input when the fundamental parameter is alkalinity. To do mash pH calculations you have to have the alkalinity so the program has, somehow or other, to figure it out from the bicarbonate and pH if the alkalinity isn't given. But quite the other way round the programs want you to tell them the bicarbonate if all you have is the alkalinity.
The issue is that I get a 15% difference in values between the two using the same inputs, and I am fairly certain my pH value is correct (I am using bottled water and so I assume the value is professionally measured and tightly controlled).
I'm not really sure what you are shooting for here. In fact I'm not sure what you are calculating. Is it alkalinity from bicarbonate and pH on a bottled water label or bicarbonate from alkalinity and pH? Post some numbers and I'll do the calcs for you and you can compare to spreadsheets to see which gives the best result. I assume pH is above 8 because below that they all ought to agree.
In the mean time if you would like to send a donation to my new organization CARABAC (Committee for Accurate Representation of Alkalinity in Brewing Application Calculators) let me know and I'll send details.