You are not able to create/activate users, even though you may have enough license allocated to your specific tenant and no duplicates of users account found.
You will get an error "A license cannot be assigned because all seat has been filled" even though you have the correct number of licenses allocated.
Example: You have 10 users created and 9 activated and one will be in the provisioned state, you might have already allocated 10 licenses for that specific tenant as seen below.
(Below screenshot for the users on Tenant)
(Seat allocation screenshot as below.)
You have enough number of license allocated but still, you may not be able to set one user to an active state.
This is due to Internal Sync agent issue.
Internal Sync agent check-in every 4-6 hours for every tenant.
Increase the Seat Allocation for the specific Tenant by 1 and activate the user.
Once activated, set the seat allocation back to as it was earlier (For example, make Seat Allocation to 11 from 10; set user to Active and change it back to 10).
If you get any error, then it cannot be set back to 10 as seen below.
Set the newly activated user to provisioned state, reduce the license count back to 10, save it and activate the user again from Directory Manager.
Note: You can adjust seat count dynamically at any time. So if usage expands or contracts, your licensing follows within your allotted seats.
The default number of seats for the default org cannot be less than 10.