As of 2019 we no longer recommend or support the use of before header widget areas as they create CLS issues and are a poor above-the-fold user experience.
Instead, use the inline subscribe feature built into the Modern Mobile Menu.
This is an unsupported customization.
This tutorial will explain how to add a widget area before the content on single post pages. Using something other than a text widget here may require additional custom coding.
The first step is to add this snippet to the code snippets plugin:
and then you can add this snippet to the Additional CSS panel in the customizer (Appearance > Customize > Additional CSS):
After you've got the snippets added then you can find your new widget area by navigating to Appearance>Widgets. You can now drag and drop widgets here for anything you'd like to add to the top of all of your posts.