Bitcoin is pseudonymous (pseudonymity): the blockchain shows addresses and amounts, not names. That protection is only as good as the separation between addresses.
The problem
If you post one address and receive many payments to it, anyone can see the total you have received, when, and from which earlier transactions. If that address is ever tied to you (an invoice, a social media post, an exchange withdrawal), your whole history behind it is exposed. It also exposes the payers to each other.
Bitcoin's answer
The white paper already said it in 2008: "a new key pair should be used for each transaction to keep them from being linked to a common owner." Modern wallets do this automatically. Thanks to the seed phrase (BIP32/39), one backup covers practically unlimited fresh addresses, so there is no cost to using a new one every time.
In practice
- Press "receive" for every new payment and use the new address.
- Do not publish a fixed donation address unless you accept that it is public. A silent payment code or a Lightning option is better for that.
- Change goes to a new address automatically in good wallets.
The white paper also notes the limit: transactions with several inputs reveal that the inputs share an owner. Fresh addresses help, but they do not solve everything; see coin control.