I have it set up so that captions are always on but they won't turn on for the free streaming channels.
Even though you may have set to "Always On", you may have to navigate within the channel (namely, select an episode or show to play) and then look for an additional setting related to closed captioning (CC) or Subtitles to turn on. Additionally, there are some channels/apps that do not have closed-captioning included in their programming. In this case, you won't receive closed captioning.
Do you have some examples of specific channels you are having the issue with? Can then help verify if problem is actual channel related or can offer another suggestion.