Nothing paid runs without a billing account, and understanding the link prevents surprise bills and surprise outages.
A Cloud Billing account holds the payment method and receives the charges. Each project is linked to at most one billing account; one billing account usually pays for many projects. Paid services refuse to work in a project with no billing linked.
Roles are separate from project roles: Billing Account Administrator manages the account, Billing Account User may link projects to it, and Billing Account Viewer reads costs. To link a project you need Billing Account User on the account and the right to change billing on the project (for example Project Owner or Project Billing Manager).
New customers get a free trial credit (USD 300 for 90 days at the time of writing). Separately, the Free Tier gives small monthly allowances that never expire, such as one e2-micro VM in certain US regions and a few GB of Cloud Storage in US regions, plus free quotas in services like Cloud Run, Pub/Sub and BigQuery.
If you unlink billing (or a budget automation does it), paid resources are stopped and may be deleted. That is a blunt kill switch, not a cost control. For day-to-day control you set budgets and alerts, covered later.
Costs appear in the console's Billing reports within hours; for detailed analysis export them to BigQuery.
Example
gcloud billing accounts list
# ACCOUNT_ID NAME OPEN
# 01AB23-45CD67-89EF01 Main billing True
gcloud billing projects link shop-dev-4821 --billing-account=01AB23-45CD67-89EF01
gcloud billing projects describe shop-dev-4821 --format="value(billingEnabled)"
# TrueRemember
- One billing account pays for many projects; a project has at most one
- Billing roles are granted on the billing account, not the project
- Unlinking billing stops paid resources, so it is not a gentle cost control
Watch out for
- Assuming a budget caps spending; budgets only alert unless you automate an action.