Unauthorized Charges & Billing Discrepancy: Are They Inventing Usage?

Hey everyone,

I’m facing a seriously confusing issue with my OpenAI account, and I’m hoping someone can give me some light on this.

  • No Activity, Yet Charges:

    • I haven’t tested anything since March 9.

    • Despite this, my Usage Dashboard shows daily charges of $4.34 on March 11, 12, and 13, 2025. To prevent unauthorized use, I removed all API keys on March 14, yet charges continued on March 14 and 15.


  • Trust & Safety Incident:

    • On March 14, I received an urgent email from the Trust & Safety team warning about (very) inappropriate requests. I immediately responded that I made no such requests, and they later admitted a mistake. I asked about the charges and usage, but they didn’t reply. The charges haven’t stopped and I don’t even see them stopping now.

  • Storage Reporting Discrepancy:
    The only thing I can think of is that (maybe?) those charges are being made for Storage. To investigate the origin of these charges, I queried several endpoints:

    • I used the billing API endpoint /v1/usage?date=<date> (2025-03-15) for Retrieval Storage (File Search Storage) and received a response showing 882,815,318,908 bytes (approximately 822GB!!!).
    • In contrast, when I queried the /v1/files endpoint, the total size of active files was only about 11GB (which is closer to what is expected).
    • Additionally, querying the /v1/vector_stores endpoint for my assistant API returned a vector store usage of roughly 20.29GB.

For context, if I were being charged for the assistant API’s vector store, ~20.29GB should cost around $1.93/day—not the $4.34/day I’m being billed. Even if I reduce that usage to ~10GB, it still doesn’t explain these extra charges.

My account is secure (2FA enabled, no unauthorized API keys, no access by anyone but me), so I’m at a loss.

Is OpenAI billing me for phantom usage, or is there some bug in the system?

Has anyone experienced anything similar?

Any insights or advice would be greatly appreciated.

1 Like

A vector store amplifies the cost. It is not just the data, it is the size of the embedding dimension.

Strings: 800 tokens => 3200 characters (user configurable)

That is accompanied by the data size of storing the dimensional coordinates

if it is the truncated dimensions of assistants as documented:

  • vector: 256 x 4 bytes = 1k

OR

if up to full dimensions of 3-large

  • vector: 3072 x 4 byes = 12288 bytes

Strings are plain text so they can be returned to you in run steps, and compression is unlikely.

Thus having 1k of text and 1k of vector storage can double the consumption, besides other containers of metadata you might be billed for if as encompassing as “all data used by you”. Besides a daily plot in the usage page, you really can’t observe the constituent parts.

Thus, I would examine why you need active vector stores if not using the API. Dump out the file list and delete them, since OpenAI charges for what is nearly free and doesn’t charge for AI needed to produce or recreate them.

I have seen similar charges on my account since the beginning of March more than 300 times my usual. I haven’t increased my activity nor changed my workflows.