Firebase storage states full after deleting all files - firebase

Like many other people out there, I am using Firebase for my project. In the past few days I have used Firebase quite a lot for sending media files between users. Now, I am also on the free plan, as I am still testing Firebase.
All of a sudden, Firebase has stopped responding, mentioning that
"You have exceeded your quota for this project. Please upgrade your plan.
LEARN MORE"
I know that Firebase has a limit on the amount of data I can transfer per day and store, that's no problem. My problem is that even after a full day, and having everything in storage deleted, I still get the same error.
Truth is, this error only shows up for the storage section. But, as you can see in the picture, my storage is now empty. Therefore my question is how can I reset firebase, or there's no other way around other than paying?
Since I am not able to see any files, I am also suspecting that I have not deleted them all, or them correctly? Could this be what's going on?
The more interesting part is the when clicking on "LEARN MORE", I am prompted to the following page, which is even more misleading.
Update: After looking at my quota details I found out that my Cloud Storage Network is full:

Looking at the Pricing for Storage on the Spark Plan it says that you can store up to 5Gb of data. Now this plan is based on Cloud Platform's Always Free and their documentation says "5Gb-months". I'm not sure of what that means, but I'm assuming that you have already exceeded your 5Gb for this month (even though you deleted the files afterwards). Maybe your quota will actually have some kind of "refresh" next month so you'll probably only be able to use Firebase storage again by that time.

Related

Error loading collections You have gone over your daily usage limits

My app is still in development and I uploaded about 35.6 MB of images to firebase storage.
suddenly the application stopped working and I cannot access the Firestore From the Firebase console. it shows the message
Error loading collections
You have gone over your daily usage limits
Is it possible that I have reached the limit and we are only 3 people currently using the application? Or is there an error in the firebase?
Will the problem be solved if I enabled payment in my account?
How much will I expect to pay monthly?
It is quite common to go over your free quota much earlier than you'd expect during development. During this phase developers usually keep the Firestore console open, and any data that the console reads is also charged. So you'll first want to check that, and see if you really need to keep the console open - or if you can see what you need in your app already, or with some dedicated queries.
Will the problem be solved if I enabled payment in my account?
If you've hit the free quota of your project, moving the project onto the paid/Blaze plan will remove/increase that quota.
How much will I expect to pay monthly?
Firestore pricing depends solely on your usage, so I recommend checking out the Firebase pricing page (and the calculator at the bottom)

How can you limit the billing in firebase? They used to have this possibility, it looks like they removed it [duplicate]

I'm currently working in a social network app and I need to do a search feature. Firestore does not support these kind of queries, so I need to use an external service like Algolia.
The problem is that the free plan does not support connecting to external websites/APIs other than Google's own ones, so I can't connect to Algolia to get my search system working.
I have read multiple stories about devs paying high bills because of loops or errors in their code, and as the Blaze plan is a pay-to-go plan, they get charged what they used. If a loop generated 10TB of files they will get charged for that.
I also know that Blaze plan's features are free as long as each of them (individually) stay below the limits of the free Spark plan.
So as my question says, is there a way to set limits? For example, I would like to tell Firebase to limit my cloud functions invocations to 100k per month. That way it would be free and I would never be able to get over 100k as it's limited, which means I'll never get billed for that.
Take into account that the only thing I need right now from a paid plan is the connection to external networks. I don't need anything else as we're just starting and the app is not in production, so there's no need for huge limits.
Every Firebase project is also a Google Cloud Platform project. This means that many of the advanced features of Google Cloud Platform are also available for your Firebase project.
For example, you can set up billing alert for your Firebase project, so that you are alerted when the usage reaches a certain level. While you can't configure it to switch off the project at some point, the alert should typically be quite good for alerting you to unusual usage patterns.
For more on this see:
Tracking your spending with budgets in a recent blog post.
The GCP documentation on how to set budget alerts, which is what Firebase uses under the hood.
The GCP documentation now also has a section on capping (disabling) billing to stop usage. This is a brute force approach though and may lead to data being lost, so I'd recommend investigating all other options first.
Update (December 2020): Firebase's Todd Kerpelman just released a series of videos where he disables billing using the process from the documentation mentioned above.
You cannot set spending limits to your app now.
As of December 12, 2019, you can no longer create spending limits, but
you can change or remove existing spending limits.
https://cloud.google.com/appengine/pricing#spending_limit
You can create budgets, which will alert you when reaching the budget. But it won't stop the usage when hitting the budget.
https://cloud.google.com/billing/docs/how-to/budgets#add-new-budget
The screenshot here seems to show a Spending Limit setting for Firebase projects: Firebase: Budget and Daily Spending Limit
That settings page is located here (the Spending Limit setting apparently only shows up once you set up billing for the project): https://console.cloud.google.com/appengine/settings
It's disabled in the poster's case, but I think that's only because he connected it up to a "NodeJS App Engine app", which isn't the case for many Firebase developers.
I haven't tried it yet myself, but will do so once I start a paid plan.
EDIT: Yep, the setting shows up once you switch to a paid plan. (in my case, Blaze) I don't have enough traffic yet to confirm that it works as expected, but if I find later that it doesn't, I'll give an update here.
"This example shows you how to cap costs and stops usage for a project by disabling Cloud Billing. This will cause all Google Cloud services to terminate non-free tier services for the project."
Google Cloud Source

Firebase Realtime Database detailed usage

Where can I get Firebase Realtime Database detailed usage i.e. I want to get details about where data is being used? My database size is about 700kb and 10GB downloaded in 2 days, I am unable to figure it out, how did this happen. Currently, the usage tab just showing me the basic usage by day. Can I get more detailed usage information?
See the Firebase documentation on monitoring usage, which lists two main options:
The Usage in the Firebase console, which you already found.
StackDriver monitoring, which will you give you more granular usage data.
If neither of these allow you to determine where the usage is coming from, you have a few more options/things to consider:
Keep in mind that traffic for showing the database in the Firebase console is also charged. Especially early on in development this can be a major portion of the usage, as you won't have many users yet.
You can use the database profiler, which logs all the activity in your database over a given period of time.

How fast can i reach 1GB in firebase realtime database

I am using firebase database and my question is, for example how fast can I reach 1GB if i have 100 users each storing worth 10 document pages of microsoft word full of text everyday, for one month?
Word documents would be stored in Firebase Storage, not the realtime database. Realistically, the only way you will be billed anything for using the Firebase platform is if your app gets a significant of usage. I suspect that 99% of firebase apps do not generate any billing whatsoever. ...that's just a hunch.
If you do run into billing issues, that will/would be a good thing.
Although this question is too broad since it lacks various variables like the number of users, size of the files and how this data is presented in the app I will try to give my $0.02 on this in a very generic way which can also be interpreted as how not to end up with a huge bill while using firebase,
Even though Firebase provides a sufficient space to test out the app in production there is a lot of ways in which things can go bad real quick like,
1) since firebase automatically handles the sync this additional read/write call comes out of your quota apart from the call you trigger check-out how one app developers found this out the hard way
2) if you have bad DB schema/design that you have not addressed, then you end up making multiple calls to the server to fetch the data which again bloats up the number of calls you make read about this here
3) Not setting spending limits and alerts, this should be a mandatory step to avoid a lot of the above problems even though the docs clearly gives an indication on how to set this up
These are some of the cases that I have come across I hope this serves as a guideline to set up your app

Firebase storage Quota has been exceeded

I have set up a test account on firebase just for development purposes.
I made use of the storage feature and so I uploaded manually an image with the size of 400kb which later I downloaded through an IOS application.
All of a sudden the application stopped working and I cannot access the storage from the console.. I get the message "warning Can't connect to server. Try again in a few minutes."
By searching in the stackoverflow, I found some people claiming that this has to do with multiple google accounts signed in from the same browser etc..
The IOS application though, logs the following error:
Error Domain=FIRStorageErrorDomain Code=-13000 "An unknown error occurred, please check the server response." UserInfo={object=images/nicewall.jpg, bucket=partyreports-49b0a.appspot.com, ResponseBody={
"error": {
"code": 402,
"message": "Quota has been exceeded for this project. Please visit the Firebase pricing page to learn more."
}
Please pay attention to the message "Quota has been exceeded.."
How is this even possible? The analytics/events shows "session_start:193" which I assume is how many times the application connected to the Firebase.
Now if my calculations are correct 193x400KB is way less than the 30GB traffic limit..
It is worth noting that I have a second project setup under the same account which I don't use at all.. and the storage is accessible..
After googling a bit, I found that I should have billing information setup.. and so I did.. after a few minutes I can access the storage again..
How can I tell what was wrong?
Was it the billing account? Or that was a random incident?
I do NOT believe my app exceeded the limits
How often the limits reset?
Where can I see the actual limits for each service/feature?
Thanks and sorry for the long post!
Sorry you had issues! Here are some answers:
Was it the billing account? Or that was a random incident?
Unsure why it happened--it's possible that there's a bug in our quota system, or it's possible that you ended up storing or sending more data than you thought. I'm not sure how you're using storage, but if you've got a 400kB image and we have a 1GB/day limit, that's 2500 downloads/day. If you've got 200 users, and they use the app routinely, and the file is downloaded on app start every time, that might explain extra usage.
Our free plan offers 30GB outgoing bandwidth per month, 5GB of data storage total , and 20,000 uploads and 50,000 downloads operations per day--once these limits are hit, the app won't work until the quota resets, or until you upgrade your app. Once you upgrade, the quota limit is removed and the app works, which is why your problem went away.
How often the limits reset?
The bandwidth is 30GB/month, enforced as a daily limit (so every 24 hour period means you're allotted 1GB of bandwidth). This limit resets every day.
Storage is 5GB total, and once exceeded you need to remove additional data (or upgrade your plan) before the app works again.
Operations are 50,000 downloads and 20,000 uploads per day.
See the quota limit docs for more info.
Where can I see the actual limits for each service/feature?
We're working on exposing usage data for each service in their respective sections of the Firebase Console. Stay tuned for more on this.
I had te same issue,
I had upgraded it to blaze plan and then deleted some of the data from the storage and then again downgrade the plan to free and it will start working for testing
firebase limits the number of new Email/Password and Anonymous accounts that your application can create in a day from a single IP address.
you can check this out to change and schedule sign up quota.
Found this in firebase project authentication settings.
For future ref please use cached_network_image and for videos cached_video_player cause believe it or not i just blew through the 1GB limit withing an hour testing the video player using a stored 1mb video. The band with is a problem amongst other things on firebase so cache where you can and if you cant i suggest you find other file hosting services

Resources