Generally, clients prefer fixed price as it fits into their illusion of financial predictability.
To the freelancer however, fixed price can at times be detrimental - not only financially but also to the client relationship.
I agree with the comment that states that the only time and place for fixed price is if the project is a complete clone of a previous project - as customisations tend to accumulate and inevitably lead to massive and often seemingly never-ending scope creep.
Having negotiated a fixed price, the client will naturally attempt to extract as much work as possible from the freelancer, as there is nothing stopping them from doing so; nothing is too small as they have already paid. With an hourly rate and a short feedback loop, the dynamics change - as all changes will cost money, meaning the client will evaluate whether a change is worth it.
Fixed price has more potential to end badly with arguing and threats of litigation, whereas an hourly rate typically leads to shorter faster projects where the client may not have gotten every single thing they wanted, but end up satisfied with what they got and might return in the future.