Colab's free version works on a dynamic usage limit, which is not fixed and size is not documented anywhere, that is the reason free version is not a guaranteed and unlimited resources.
Basically, the overall usage limits and timeout periods, maximum VM lifetime, GPU types available, and other factors vary over time. Colab does not publish these limits, in part because they can (and sometimes do) vary quickly.
GPUs and TPUs are sometimes prioritized for users who use Colab interactively rather than for long-running computations, or for users who have recently used less resources in Colab. As a result, users who use Colab for long-running computations, or users who have recently used more resources in Colab, are more likely to run into usage limits and have their access to GPUs and TPUs temporarily restricted. Users interested in having higher and more stable usage limits can use Colab Pro.