My formula: take 30% off displayed distance, then add or subtract 1 ft for each inch of rise or fall in elev. Do not adjust for elevation before the green speed correction - speed is a function of friction from green vs length of putt
Finally add 1.5 - 2 ft (distance and elevation numbers are rounded off, and can be+/- half and inch, and putts over 10 ft are also rounded off to nearest whole ft and can be +/- half a foot).
If putt is downhill, ease off that final 'safety factor' to 1 foot -- if it's really steep, drop the safety factor entirely.
In general:
SLOW add 10%
STANDARD = ZERO CORRECTION
FAST -10%
VERY FAST - 20%
TOURN - 30%
CHAMP - 40%
Lastly, the faster the green speed is, the more break will occur for any given slope.