Which Join you are using- Kindly use full outer join so that you will get a cross product when you do the count you will be able to get 80
Kindly mark this answer as complete/helpful so that it will help others
You are getting only 30 users possibly because you are doing an inner join. Another alternative will be do a left join, since your User table contains a complete list of valid users.
Add the User table first on the left most side of the data join and then left-join all other tables to it.
Looks like you are using an inner join(or left join keeping fact table as left table).
If you want to have all the user go for left/right join keeping dimension table as left/right table.