I'm not talking about boycotts in general, like say the Montgomery Bus Boycott, because we know those can work. I'm talking about "Company that sells product made me mad" boycotts.
Whether it's past ones like the infamous Call of Duty: Modern Warfare 2/Left 4 Dead 2 boycotts, or more recently like the brewing chud Pride Month boycotts (And if we're being brutally honest here on the flipside: The all-but-in-name boycott of that Harry Potter game a month or 2 ago), all of them seem to universally fail spectacularly and not impede their targets in any way.
There are instances you can point to where they've "worked" but something which should always be kept in mind when discussing them is:
The idea that our role in facilitating change is to be smart consumers and "vote with our wallet" is fundamentally a liberal idea and; the problem with "vote with your wallet" as a guiding principle is it accepts that some people have disproportionate voices in the process.
One of my favorite statistics I like to throw around when people complain about how people keep paying for micro transactions, loot boxes, and dlc in videogames is that the best statistics we actually have access to shows that something like 50-60%+ of the revenue of micro transactions comes from 0.15% of the total user base.
A boycott from the general user base is meaningless here because they aren't paying money to begin with and were never expected to. It's like organizing a yacht boycott. You would need to organize a boycott among the highest paying customers(the industry calls them whales)...and they likely have no incentive to boycott at all.
Also the "company did a thing and I got mad" in the modern era is really a marketing gimmick. These companies know that the primary goal is fighting for media space and getting engagement. Good engagement, negative engagement doesn't matter, as the YouTube algorithm shows. Engagement is engagement. Boycotting from a portion of the potential customer base is also a form of engagement in this framework, and they know it.
TLDR; boycotts can work but they're not the only tool at our disposal, and like "peaceful protest" they are the one that always gets pushed as the best/only option because they accept the liberal framework as a given.