Late to this thread, but Lukas's point about surface vs terrain models is worth an update, because it's no longer quite true.
Since 2025 there's a free global bare-earth model: GEDTM30, from OpenGeoHub. It's 30 m resolution, built by combining satellite elevation data with ICESat-2 and GEDI lidar measurements to strip out trees and buildings. So it's a terrain model rather than a surface model, which matters a lot in wooded areas where the older free datasets (SRTM, ALOS) put the "ground" on top of the canopy.
Full disclosure: I build a contour tool, topolines.app, which uses GEDTM30 worldwide and switches to national lidar where it's open (France, Spain, Switzerland, England, the US at 10 m, parts of Germany and Austria). I ran a comparison of GEDTM30 against lidar on a few test areas, including forest, if anyone wants to see where it holds up and where it doesn't:
https://www.topolines.app/blog/gedtm30-vs-lidar
That said, Lukas is right on the main point, and it applies to every online tool in this thread, mine included. A 30 m (or even 5 m) grid won't show terraces like Burra's, and 1-2 ft contours generated from it are interpolation. Good for reading the shape of a watershed, finding valleys, ridges and the general keypoint area. For actually laying out swales or keylines on the ground, an A-frame, water level or laser level is still the tool.