Every 3 hours by default.
You could modify the number set at the very top of your Custom Tile code if you wanted a faster refresh. Just keep in mind that a faster refresh could put you over your API limits.

Doing a quick “back of the napkin” math, even with the lower 1000 free API calls for the 3.0 version of the Open Weather API, if you had it set to every 10 minutes, that would be 144 calls per displayed tile in a day
(24 × 60) ÷ 10 = 144
So if you had a single weather tile on 5 different displays, that would be 720 API calls to the One Weather API each day.
Of course, that assumes you aren’t using the API key elsewhere (like in a Hubitat driver) that would be increasing the API call, but you get the idea.
Edit: And if you enable AQI in the tile settings, that requires a separate API call, so it would double the number of API calls.