Creating billing accounts and linking them to projects present no real difficulties. It seems important to recognize that a billing account and a payment profile are not the same. The billing account resides inside GCP, but the Payment Profile exists in a separate Google entity. The payment profile processes payments for any Google services. The billing account does not actually process payments. Instead, it keeps track of all the expenses incurred by its associated GCP projects and resources. Every billing account has exactly one payment profile associated with it. Here is a really good explanation of the differences.
I definitely don’t want to accidentally accumulate excessive expenses in GCP. To prevent this, I am very diligent about stopping my projects before I log out. As a fail safe, I also set up a budget. The basic steps for creating a budget involve defining a scope, setting a budget amount and creating alert thresholds. Initially, I decided to set up one budget for all my projects and resources. To practice, I added individual budgets for my two projects. By default, email notifications are sent when an alert is triggered, but ‘programmatic notifications’ are also available. This is a reminder to myself to come back to that topic someday.
Another area to delve into more deeply is the reporting and monitoring area of the billing GUI. The billing data can also be exported to BigQuery or a file stored in Storage Bucket. I was so excited to see my first expense related to my virtual machine, a whopping twelve cents! Even more exciting was seeing that it was paid for out of the $300 credit I got for setting up a one year trial of GCP.