In a GARCH(1,1) model
$$ x_t = \sigma_tz_t$$ $$\sigma_{t+1}^2=a_0 + a_1x_t^2 + b_1\sigma_t^2$$
the kurtosis (when it exists) can be shown to be equal to
$$ \kappa_x = \kappa_z \frac{1-(a_1+b_1)^2}{1 - (a_1+b_1)^2 - a_1^2 (\kappa_z - 1) }$$
where $\kappa_z$ is the kurtosis of $z_t$. For standard normal innovations, i.e. when $z_t \sim N(0,1)$, $\kappa_z = 3$, and with $$ a_0 = 0.01, a_1 = 0.09, b_1=0.9$$
this gives
$$ \kappa_x = 3 \frac{1-(0.99)^2}{1 - (0.99)^2 - 0.09^2 (3 - 1) } \approx 16.14$$
However, when I run simulation of this GARCH process, I find that the sample kurtosis is somewhere around 7-8. For example, the plot below shows sample kurtosis calculated on 1,000 simulations of the above GARCH process with 10,000 time steps each. I don't understand where this mismatch between the theoretical value above and estimates is coming from.
Add 1
I have run simulations with different parameter settings to move the process away from IGARCH, but it doesn't seem to have improved much the results. For example, with $$ a_0 = 0.2, a_1 = 0.383, b_1 = 0.417$$, the theoretical kurtosis is about $16.2$ but in the simulations the sample estimates produce a mean kurtosis of about $9.7$ and median of about $6.7$ (plot below).
Add 2
I also run simulations using simple t-distributed random number with 4.45 degrees of freedom (which also gives a kurtosis of around 16.3) and calculated sample kurtosis on these. The plot below shows the results, which are also "bunched up" around 8 with the median of 8.78, but the mean is driven up to 20 by the few of the very large outliers (actually, it is mainly the most extreme one which pushes it up to 20, without it the average kurtosis is 12.3). So it is qualitatively similar to GARCH results and supports the arguments by Matthew Gunn.