100 users active is not... game ending... If you want consistent performance take your budget, buy the biggest you can get and grow into it. (This is generally bad advice but I think it applies here...).
Generally when speccing server hardware one does bench marks and finds the hardware they need and buys that hardware at the cheapest price they can find. If you don't have that ability... it's probably best just to throw top dollar at hardware and then if that is not enough work on optimizations like caching / etc.
It's impossible to answer your question directly because:
You say 100 active users/day
I take this to mean that during the day 100 users come and go and maybe do some things
That is no big deal... Let's assume that for 12 hours in the day.. your users sleep
(if they don't and access is spread around the clock it works in your favor -- distributed load)
So 100 users make ~30 requests that are either reads/posts/uploads/or something else...
These loads very... so we'll pretend they have a nice clean average.
100 x 30 = 3,000 requests / day.
If we pretend that your server takes 10/sec to process one request
then we have a total processing time of:
100 x 30 = 3,0000 requests * 10 seconds = 30,000 seconds / day spent processing requests
There are some 86400 or so seconds in a day.
If we cut off half of those because users are sleeping
Then we still have 43,200 seconds left
30,000 < 43,000 seconds so the server might handle the load...
If everything is spread out..
The important things are:
1) Your users habits
2) The effect those habits have on server load / capacity / etc (EG: Reading a page from cache is easier on the server than uploading 50MB).