Glassnode has all onchain BTC data. A little of this data is available for free, and you can get everything you want with a paid subscription (Professional and Research Professional Subscription Plans). Its prices are a little high, so you will not get this data for free.
I do see they have weekly data measured in USD, but not annual data measured in BTC. So, how can you be so sure they have that data?
I was able to find this:
https://studio.glassnode.com/charts/transactions.TransfersVolumeSum?a=BTC&resolution=24h&s=1760102235&u=1775827035&upgradePlan=advanced&zoom=182But, it isn't clear if they subtract out the returning change or not, which is essential for the accurate number.