You can self-host Gitlab CI runners and use them even in the free community version.
Hi Spivak, You're not Lee Spivak (formerly of Upromise in the early 2000's), are you?
This is used to combat abuse and crypto miners, they don't actually charge the card.
You can also connect your own private runner to either the saas or self-hosted gitlab-ce for free, you just have to provide your own runner.
You can always connect your own runners to GitLab, whether SaaS or self-hosted, and whether free/CE or premium/ultimate/EE. GitLab SaaS also comes with free use of the central runners up to a quota. I'm not sure about the history here but as far as I know this has always been the case.