There's a popular saying among many mobile DJs that good is never cheap & cheap is never good. Personally I don't think this is the case. There are some good, cheap DJs I know of who are the exception to the rule and a few shall we say more expensive DJs, who aren't all that.
There are a lot of things you can do to save money putting on an event, be it your own wedding or a birthday party. You can opt to decorate the venue room yourself. You can prepare & cook the buffet yourself or enlist friends & family members to chip in. But should you really save money by not hiring a DJ?
At first glance a DJ doesn't do much besides show up with some equipment, set it all up & play music before taking everything away at the end. But there's a lot goes on you might not have realised. If requests are made, the DJ might prepare before the event to make sure they have everything & that they're the right versions. During the event they watch the room & guage when best to play certain music. They can make announcements to make sure everybody knows what's going on and is engaged. Their lighting can transform a venue. The right lighting can enhance the vibe at a party & take it to a completely different level. An experienced DJ will have seen hundreds of different kinds of parties & will be in a much better position to judge & advise on timings of things too.
If you want to 'do a bit of music' at an event without a DJ you have a few options. You might not necessarily want to buy speakers suitable for 100 people dancing at your party (decent ones to cater for that amount of people start at £400 each new & that's without covers or cases to protect them in transit - or cables or stands!), so why not hire a pair of speakers to plug your phone into? Well - hiring a pair of speakers with stands is going to set you back at least £150 for 'dry hire' - ie you collect them from the hire place, install them yourself & return them to the hirer afterwards. That won't include a device to play the music back from - and what if you want a microphone? That'll be extra moolah thankyou very much.
Or you might opt to buy a set of speakers. As I've already said, speakers to adequately cover a crowd of 100 people start at around £400 each just for the speakers alone - and what are you going to do with the speakers afterwards?
You might think that your mp3 player's wireless speaker will be up to the job. It goes really loud at home you think.. but no, it really isn't suitable for a bigger room & certainly won't be loud enough for people to dance to.
As for playing the music itself - Spotify will be fine, right? Well in theory yes, but as people who 'do their own music' have found, wifi & mobile phone reception at venues can be patchy at best so if you find random pauses in songs annoying that's not a solution you should ever bank on. Indeed, I heard about a wedding very recently where a couple getting married decided to DIY the music at their wedding & it was described as an utter disaster. Their first dance, among other tracks was plagued by pauses in the music as Spofity was buffering the song! (this BTW is one of my worst nightmares & the entire reason I carry backup equipment - and I DON'T use Spotify for DJing with!). The saddest irony about that case was it'd have been cheaper to hire me than buy the speakers they used! If you're relying on wifi or mobile reception for the music you can't rightly put a phone in airplane mode either - so if any calls come into the phone while a song is playing.. er..
Okay, so then you think FINE - I'll just book a mobile DJ then but I'll give them a strict list & tell them the order I want the tracks played in! No, that won't necessarily work either. A party, be it a wedding, engagement, a birthday or anniversary party is a very dynamic thing. Experience has proved time & again that although you can maybe have a reasonably good party with a predefined list of music, if you want an amazing party people are enthralled about you really need a DJ. Anecdotes abound about mobile disco DJs who've been given strict music lists & seen swathes of people leaving early or the customer has asked them to throw the list away & just do what they should have been doing in the first place. There are very good reasons I don't use my own predefined lists - mostly that variety keeps me sane (I always try my best not to play tracks in the same order) but more importantly there's no real way to know with any degree of certainty what's going to 'work' & what isn't before seeing the crowd & how they react to music throughout the event.
Besides organising & playing the music there's so much a DJ can do for you. You really can't afford NOT to hire a DJ!