AuthonAuthon Blog
tutorial7 min read

GPT-6 on Google Cloud Vertex AI: Your $300 Free Credit Can't Pay for It

It's private preview with no published price. Here's the OpenAI model you can call on Vertex AI today, and what GPT-6 costs on Azure and OpenAI.

AW
Alan West
Authon Team
GPT-6 on Google Cloud Vertex AI: Your $300 Free Credit Can't Pay for It

Half my feed this week was some version of "GPT-6 is on Google Cloud Vertex AI now, go burn your $300 free credit on it." I went through the docs to set that up. You can't, for two reasons, and Google's own pages spell out both.

Below is what's gated, the one OpenAI model you can call on Vertex AI right now with the OpenAI Python SDK, and how GPT-6 pricing compares across the OpenAI API, Azure and Google Cloud.

What Google launched: GPT-6 in private preview

Google's launch post (dated October 22, 2026) adds three closed OpenAI models to Model Garden:

  • GPT-6 Astra, the flagship
  • GPT-6.1 Sol, "near-Astra intelligence at lower cost"
  • GPT-6 Luna, the cheap high-volume one

The status line is the part people skipped: "rolling out now in private preview to select enterprise customers." Access starts with an interest form. OpenAI's announcement says general availability is planned "in the coming weeks," per The Next Web. Google gives no date at all.

As of this week Google hasn't published a model ID, a region list, a quota table or a per-token price for any of the three.

Why the $300 free credit won't cover GPT-6

Even if you clear the preview gate, the trial account can't pay for these models. Google's free trial page says:

  • On a non-billable Free Trial account you can't use Google Cloud Marketplace at all. Google sells the OpenAI models through Marketplace.
  • "You can't access or use the $300 credit for a generative AI partner model that is offered as a managed API."
  • The same page says trial accounts can't request quota increases either. So "try GPT-6 on free credits" is out, before you even get to the preview waitlist.

    What you can call today: gpt-oss-120b on Vertex AI with the OpenAI SDK

    OpenAI's open-weight models have been on Vertex AI since August 13, 2025 as serverless APIs. gpt-oss-120b-maas is GA, does function calling and structured output, and has a 131,072-token context (model card). The model card lists global for availability with processing in the us multi-region, and quotas for us-central1, which is what the snippet below uses. Google files it under "open models," not "partner models." Whether that puts it inside the free-credit rules is something I couldn't get a straight answer on from the docs, so check your billing report after the first few calls.

    Setup takes three steps. First, grant two IAM roles (docs). One lets someone enable the model in Model Garden, and the other lets them send prompts.

    bash
    gcloud projects add-iam-policy-binding PROJECT_ID \
      --member=user:you@example.com \
      --role=roles/consumerprocurement.entitlementManager
    
    gcloud projects add-iam-policy-binding PROJECT_ID \
      --member=user:you@example.com \
      --role=roles/aiplatform.user

    If your org restricts service usage, an admin has to allow cloudcommerceconsumerprocurement.googleapis.com, or enabling the model fails.

    Next, enable gpt-oss in Model Garden from the console and set up Application Default Credentials:

    bash
    gcloud auth application-default login

    Then call it with the OpenAI SDK, passing the access token as the API key. The code follows the pattern from Google's GA post and the Chat Completions docs:

    python
    import google.auth
    import google.auth.transport.requests
    import openai
    
    PROJECT_ID = "your-project-id"
    LOCATION = "us-central1"
    
    creds, _ = google.auth.default()
    creds.refresh(google.auth.transport.requests.Request())
    
    client = openai.OpenAI(
        base_url=f"https://{LOCATION}-aiplatform.googleapis.com/v1/projects/{PROJECT_ID}/locations/{LOCATION}/endpoints/openapi",
        api_key=creds.token,  # Google access token, not an OpenAI key
    )
    
    resp = client.chat.completions.create(
        model="openai/gpt-oss-120b-maas",
        messages=[{"role": "user", "content": "Explain a serverless API in one analogy."}],
    )
    print(resp.choices[0].message.content)

    Two gotchas. Access tokens expire after about an hour, so a long-running service needs to refresh creds and rebuild the client. And the docs say the global endpoint (https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/endpoints/openapi) costs the same as a regional one and can cut errors, but use regional if data residency matters. The org policy constraints/gcp.restrictEndpointUsage can also block global.

    Third-party trackers such as LLM Reference list Vertex's gpt-oss-120b price at $0.09 input and $0.36 output per million tokens. Google's pricing page wouldn't render for me, so treat that as unconfirmed.

    I'd also guess GPT-6 lands on this same openapi endpoint once it's GA, so this code would only need a new model string. That's only a guess, though, because Google hasn't published the GPT-6 integration docs yet.

    GPT-6 pricing: OpenAI API vs Azure vs Google Cloud

    Short-context list prices per million tokens (input / output), from OpenAI's pricing page and Microsoft's Foundry launch post:

    | | OpenAI API | Azure Foundry | Google Cloud |
    |---|---|---|---|
    | Status | GA | GA (Astra since Sept. 3, Sol and Luna since Sept. 22) | Private preview |
    | GPT-6 Astra | $10 / $50 | $10 / $50 Global | Not published |
    | GPT-6.1 Sol | $2 / $10 | Not listed (GPT-6 Sol: $2 / $10 Global) | Not published |
    | GPT-6 Luna | $0.10 / $0.50 | $0.10 / $0.50 Global | Not published |
    | Batch discount | 50% (Batch and Flex) | Not in launch post | Not published |
    | Data residency cost | +10% on regional endpoints | US Data Zone +10%, EU Data Zone +20% | Not published |
    | Regions | Regional endpoints | 28 Global regions plus US and EU Data Zones | Not published |
    | Bills against | OpenAI account | Azure commit | GCP commit, Marketplace |

    Note that Azure sells GPT-6 Sol, not GPT-6.1 Sol. OpenAI sells both at $2 / $10, but cached input differs: $0.10 for GPT-6.1 Sol versus $0.20 for GPT-6 Sol, which is also what Azure charges. For context, when AWS took GPT-5.6 to GA on Bedrock it said "Pricing matches OpenAI first-party rates." I'd expect Google to match OpenAI's list price too, but nobody has put that in writing.

    GCP commits and Flexible Savings Plans: drawdown, no discount

    The reason to care is one sentence in Google's post: usage "draws down existing cloud commitments, and counts toward Flexible Savings Plans (FSP)." If you're behind on a GCP commit, that sentence matters more than anything else in the announcement.

    What it doesn't get you is a discount. Google's FSP docs say "Third-party products don't get any discounts from the FSP," and "Underutilized FSP commitments don't carry forward." The one exception is a Marketplace Private Offer: if you negotiate a discount off the partner's list price, that discount applies, but you'll have to get it out of your sales rep. One Hacker News commenter says partner spend can only cover up to 25% of a commitment. I couldn't find that in Google's public docs, so ask your account rep before you plan around it.

    Security has gaps too. ZDR and Confidential Compute are both "coming soon" in the launch post, and Vertex's security controls page says "Security controls are not supported for preview models." The launch post also claims VPC Service Controls protection. Until GA, I'd go with the narrower docs page.

    Capacity is the other open question. In the same HN thread, one commenter says Gemini's dynamic usage limits are "hitting us hard," and another reports a month of compute allocation failures in us-central1 on ordinary Dataflow-type jobs.

    My take

    If you're an enterprise with a fat GCP commit and you're under-consumed, fill out the interest form today. Moving OpenAI spend onto that invoice is free money in the "use it or lose it" sense, even at list price.

    Anyone else should wait. Azure has had all three models GA since September with published prices and two residency tiers. OpenAI direct is the same price with fewer IAM roles to deal with. Google Cloud is the third place to buy the same tokens, and it's the only one where you can't see the price yet.

    If you just want to try OpenAI weights on GCP this afternoon, gpt-oss-120b and the snippet above will get you there.

    Would you move your OpenAI billing to Google Cloud or Azure, or keep paying OpenAI directly? And if your finance team has already forced the move to burn down a commit, I'd like to hear how the quotas held up.

    Sources

    • Google Cloud launch post: https://cloud.google.com/blog/products/ai-machine-learning/google-cloud-brings-openai-models-to-customers
    • OpenAI announcement: https://openai.com/index/openai-models-google-cloud/
    • Google Cloud free trial terms: https://docs.cloud.google.com/free/docs/free-cloud-features
    • Vertex AI gpt-oss-120b model card: https://docs.cloud.google.com/vertex-ai/generative-ai/docs/maas/openai/gpt-oss-120b
    • Call MaaS APIs for open models: https://docs.cloud.google.com/vertex-ai/generative-ai/docs/maas/call-open-model-apis
    • Grant access to open models: https://docs.cloud.google.com/vertex-ai/generative-ai/docs/maas/grant-access-open-models
    • OpenAI API pricing: https://developers.openai.com/api/docs/pricing
    • Microsoft Foundry GPT-6 pricing: https://azure.microsoft.com/en-us/blog/gpt-6-astra-sol-and-luna-for-production-agents-in-microsoft-foundry/
    • Google Flexible Savings Plans: https://docs.cloud.google.com/docs/cuds-flexible-savings-plans
    • Hacker News discussion: https://news.ycombinator.com/item?id=50180079
    GPT-6 on Google Cloud Vertex AI: Your $300 Free Credit Can't Pay for It | Authon Blog