# Firebase Auth: auth/billing-not-enabled on phone sign-in

> Firebase phone sign-in failed with auth/billing-not-enabled: SMS codes need the Blaze plan. Upgrade with a budget alert, or use test numbers.

Canonical: https://app369.com/fix/firebase-auth-billing-not-enabled/
Last updated: 2026-11-09

auth/billing-not-enabled is the Firebase Auth error for phone sign-in on a project without billing. Firebase sends SMS verification codes only on the pay as you go Blaze plan. Upgrade the project, or use fictional test numbers while you build.

**Short answer**

Move the project to the Blaze plan in the Firebase console and set a budget alert first. A budget alert only notifies you; it doesn’t cap the bill. For development and app review, add fictional phone numbers with fixed codes, which send no SMS. Then retry the sign-in.

Rather not fix it yourself? [**App Fix Ticket**](https://app369.com/fixed-price/flutter-firebase-bug-fix/) starts with a fixed-price diagnosis, then a fixed price for the fix before any fix work.

## **Why phone sign-in needs billing, and the fix**

1. 01 ### **The project is on the free Spark plan**
  > “Verification code SMS messages Pay as you go (Blaze) plan only.” [**Firebase, Firebase Authentication limits**](https://firebase.google.com/docs/auth/limits) SMS codes cost money to send, so Firebase only sends them on Blaze. Upgrading adds pay as you go billing. SMS is charged per message, so set a budget alert before real users sign in.
2. 02 ### **You only need it for testing**
  > “Test phone number authentication without sending an actual SMS message.” [**Firebase, Phone authentication on the web**](https://firebase.google.com/docs/auth/web/phone-auth) Fictional numbers set in the console return a fixed code and send no SMS, so they work for development. Anyone with the number and code can sign in, so use hard-to-guess codes, give one to app reviewers only for the review, and change it afterwards. You can add up to 10.
3. 03 ### **After upgrading, the daily limit applies**
  > “Firebase Authentication: 3000 sent SMS/day limit” [**Firebase, Firebase Authentication limits**](https://firebase.google.com/docs/auth/limits) Firebase Authentication on Blaze sends up to 3,000 verification SMS a day. For more, upgrade to Identity Platform.
4. 04 ### **Bots can run up the SMS bill** Phone sign-in on Blaze is a target for SMS pumping, where bots request codes to numbers that earn them money. Consider App Check and limiting SMS to the countries you serve, and watch the SMS count in the console.

Checked against the vendor’s docs on November 9, 2026: [Firebase docs: Authentication limits](https://firebase.google.com/docs/auth/limits); [Firebase docs: Phone authentication on the web](https://firebase.google.com/docs/auth/web/phone-auth).

## **Rather hand it over?**

Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.

- [from $450**App Fix Ticket**One reproducible bug in an existing mobile or web app, diagnosed and fixed.**See scope and start**](https://app369.com/fixed-price/flutter-firebase-bug-fix/)
- [from $450**AI-Built App Rescue**A Lovable, Bolt or Cursor app checked end to end in 3 days, then its worst problems fixed at a fixed price.****No issues worth fixing, no charge.**** If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.**See scope and start**](https://app369.com/fixed-price/ai-app-rescue/)

[**All 127 Fiverr reviews**](https://app369.com/reviews/)

Related: [**Firebase auth/too-many-requests**](https://app369.com/fix/firebase-auth-too-many-requests/) · [**Firebase phone auth invalid app credential**](https://app369.com/fix/firebase-phone-auth-invalid-app-credential/) · [**Firebase auth/invalid-phone-number**](https://app369.com/fix/firebase-auth-invalid-phone-number/) · [**Firebase missing initial state**](https://app369.com/fix/firebase-auth-missing-initial-state/)

Questions

## **More on this error**

<details>

<summary>**Does the Blaze plan cost money right away? **+</summary>

Not by itself. You pay for what you use, and SMS codes are charged per message, so set a budget alert when you upgrade.

</details>

<details>

<summary>**Will email sign-in still work without billing? **+</summary>

Yes. The billing requirement here is for sending SMS codes. Email, Google and Apple sign-in don’t send SMS.

</details>

<details>

<summary>**Can you fix it for me? **+</summary>

If one bug is the whole problem, the App Fix Ticket covers it: a written diagnosis first, then the fix. If the app has more going on, the Launch Check is a written check of the whole app. Each issue found is rated critical, high, medium or low, with where it is and how it was confirmed. No issues worth fixing, no charge. If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.

</details>

A different error?

## **Describe it and get a written quote**

Send the error and what you were doing. You get a written scope, a fixed price and a timeline; Simon replies by email, usually within one business day.

[**Describe your problem **→](https://app369.com/contact/) [**All fixes**](https://app369.com/fix/)