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.
Boycotts are useful for having conversations and spreading solidarity. Anti-apartheid boycotts are effective because they're really just a way to tell people about how much apartheid sucks. It's an excuse to do tabling, for example.