Honestly, it's all of it combined, but I'd put user behavior higher on the list than most people do.
The algorithm thing gets blamed for everything, and yes, reach has shrunk. But the bigger shift is that people have stopped going looking. Five years ago someone would actually browse hashtags or scroll through "following" to find new accounts. Now they open Instagram or TikTok and just let it feed them. Discovery happens to the user, not by them. That fundamentally changes what works.
Which means the algorithm isn't really the enemy, it's just the gatekeeper to passive viewers who were never going to seek you out anyway. The accounts growing right now are the ones that get watched through to the end, saved, shared. Not just liked. The platforms optimise for those signals because that's what keeps people in the app.
The competition piece is real too. The barrier to posting went from "have a camera" to "have a phone and 10 minutes." So yes, there are way more creators fighting for the same eyeballs than there were in 2018.
That said, I don't think small creators are doomed. What has worked recently is being genuinely specific. Not "fitness creator" but "fitness for people who hate the gym and have 20 minutes." The niche stuff finds its audience because the algorithm actually rewards it. A video that 3,000 people watch to the end will get pushed harder than one that 20,000 people scroll past.
The painful truth is that the era of just posting good content and growing organically is probably over on most platforms. You need good content AND a reason for strangers to stop scrolling. Those are two different skills.