We have Netflix, Amazon Prime, and will probably get Hulu for primetime tv shows. We are wanting to cancel our satellite subscription. Do you have to have a cable or satellite subscription to get channels such as Discovery, TLC, Nickelodeon? All say free with subscription. Is there a way to just subscribe to specific channels?
Some may have ways. For example, Discovery has Discovery+, CBS has Paramount+ etc. However, not all "cable channels" have these and they are not necessarily exactly the same as their cable versions.
Should mention that for Paramount+, the $4.99 ad-supported version does NOT include live CBS broadcasts, in case you want to watch sports programming. You need the $9.99 ad-free version for that.
Many cable-type channels only make their streaming content available to people who are PAYING for their programming through a paid subscription to a provider service that carries their channel. If you don't have such a paid account you can't stream their content.
The paid provider doesn't have to be a cable/satellite provider, though. There are several streaming services you can subscribe to and view on Roku that carry cable-type channels, such as Fubo, Sling, Hulu + Live TV, YouYube TV, etc.
There are several places on the net where you can look up which providers carry a particular channel of interest. Here are a couple such pages:
https://thestreamable.com/channels
https://www.groundedreason.com/cord-cutting/tv-streaming/how-to-stream-by-channel/
Savings in cord cutting usually come from picking and choosing which of the lesser offerings you wish to pay for instead of paying for full blown cable or satellite services with scores of channels you never watch.