In my opinion, there are two different aspects to your question:
- when should I use a hierarchical model?
- when should I perform a Bayesian analysis?
When should I use a hierarchical model?
An advantage to using hierarchical models is their flexibility in modeling the continuum from all groups have the same parameters to all groups have completely different parameters. For example, the normal hierarchical model (with a known variance of 1 for simplicity) is
$$ y_{ij} \stackrel{ind}{\sim} N(\theta_j, 1), \quad \theta_j \stackrel{ind}{\sim} N(\mu,\sigma^2) $$
for groups $j=1,\ldots,J$ and individuals $i=1,\ldots,n_j$ in each group. If the means of each group are actually similar (or identical) then $\sigma^2$ will be estimated to be small and the resulting inference for the individual $\theta_j$ will be almost the same as if you had just assumed a common mean $\theta$ for all groups. In contast, if the groups have very different means, then $\sigma^2$ will be large and the resulting inference for the individual $\theta_j$ will be almost the same as you didn't have the hierarchical model at all. Thus you didn't have to choose whether to use a model with a common mean for all groups or a completely independent mean for all groups, the hierarchical model allowed the data to tell you where you fell along that continuum.
An additional advantage to hierarchical models occurs when the number of observations for groups varies widely. In these situations, the groups with smaller numbers of observations will have improved inference about their group parameters by borrowing information via the hierarchical model about the group specific parameters.
When should I perform a Bayesian analysis?
Once you have decided to use a hierarchical model for your data, there is still the question of how you will estimate parameters and account for their uncertainty. While there are other options, many people will opt for a Bayesian analysis because of the computational tools, e.g. Markov chain Monte Carlo, and the propagation of uncertainty, e.g. uncertainty in $\mu$ and $\sigma^2$ gets propagated to uncertainty about the $\theta_j$ group means. In order to perform a Bayesian analysis, you need a prior for unmodeled parameters, e.g. $\mu$ and $\sigma^2$ in the example, and, if there are enough groups and enough observations, you can generally be non-informative about these parameters.