GeneratePress Premium has added in its recent version 2.5.0 a local font library feature called Local Font Library to upload your own custom fonts and serve them locally on your site. Although this is not something very new because many other templates already incorporate it for a long time, it is appreciated.
The advantages of hosting fonts locally are several, it improves privacy and you get control over the amount of fonts (and families) to use reducing requests and therefore improving load time. At the very least you save two requests to fonts.googleapis.com: the one for the font and the one for the stylesheet.
So far, I've been doing this with Perfmatters and I've yet to compare the performance, the configuration in GeneratePress seems a bit better to me because it allows you to host locally only those fonts you need, unlike Perfmatters, which reads all the fonts in use and forces you to remove by hand those you don't want or need before hosting them.
To use this function, you must first activate it from Appearance /GeneratePress/ Modules.
Now, in Font Library you will find two options, the first one to connect to Google and download the fonts you want and another one to upload them if you already have them downloaded on your machine.
The first option asks you to connect to Google Fonts. Allowing access will only allow you to access the list of fonts and download them.
You search and select yours.
And that's it. You have it hosted.
Then you can add some additional parameters in "Advanced options".
Finally, under "Settings" you can revoke access to Google Fonts. The fonts you have selected and saved will remain installed.