Backblaze B2 API transaction pricing

TL;DR: Why am I racking up Class C API Transactions (and associated cost) when backing up my data to Backblaze B2?

I am in the process of backing up my NAS to Backblaze’s B2 service. I’ve never done this before and had a question about some pricing and API transactions I am seeing for their B2 service.

First, my assumptions are:

  1. It’s free to upload data to BB
  2. You pay $6/TB/month for their hosting.
  3. It’s free to download your data.

Now after uploading part of my data, I see that I’m racking up some Class C API Transactions. I set some caps to protect myself from my own ignorance here and I guess it’s a good thing because I’m not really sure what these are or why they are happening

One contributing factor might be that I have set up 5 individual buckets. One for each dataset I wanted to back up. I have no idea if this is good practice, but it made sense (to me) to segment individual uploads so they aren’t in the same pile. Everything is encrypted going up, so it’s not like I can understand the file structure once they’re there.

I know this post is probably better suited to Backblaze support, but they are off today and I figured someone here might know.

Why am I racking up Class C API Transactions (and associated cost) when backing up my data to Backblaze B2?

In the billing section if you click the little arrow you’ll see a breakdown of what is being called. It’s most likely to be the listing of files that are the charges you can see in summary. The upload tool does call that to see what’s already uploaded to help it work out what needs to be uploaded.

I’ve restricted uploads to once a week, which is a level I’m reasonably comfortable with, to restrict the costs whilst I see how it settles down on mine once everything I want uploading is uploaded.

Thanks, Vollans. You are correct, primarily listing file names

Maybe this is business decision, but why break this out in its own class? Baking up directories seems like a fairly common workflow.

The cost is not an issue, but I suppose I could set a cap at 1 cent and fly under the radar until its done.

A TrueNAS question
After the initial push, I have my task set to sync every hour. Will TrueNAS Scale track which files need syncing after the initial upload? Or will TrueNAS hit the B2 APIs to compare files and folders in the cloud? I’m not really sure how the cloudsync task works. I hope my current setup wouldn’t rack up $X of class C API calls every hour. Ideally the diff is stored and compared client-side.

Not sure, that’s part of the reason I’m limiting when I upload at the moment so I can get a handle on how it works next month when the bulk is uploaded already and there should be minimal changes.

I assume you do not have fast list activated?

If I remember correctly I was also racking up class C transactions but using fast list has mitigated that successfully.

1 Like

Correct, I do not!

That would be a really nice setting to have on by default if that fixes things. I’ll see if that does anything

Section 9b

Truenas documentation also states potentially more RAM usage, maybe that’s why it isn’t default. :person_shrugging:

From my experience I couldn’t see any negative effects but I also have 128 GB memory, so…

1 Like

I read through that BB guide when I was first setting things up. I even looked up ‘fast list’. It never occurred to me that this was the reason why you’d want that enabled.

Rant: TrueNAS needs to do a better job with their documentation. It’s good that they call out impact to RAM, but I feel like they are burying the lede by not at least mentioning cost. Something like “This may reduce the cost of your backups with some services” would resonate more strongly with most users.

The fast list tooltip in TrueNAS UI is the perfect portrait of my documentation experience as a whole:

…This can also speed up or slow down the transfer.

I’d really like more care taken to explain the when, why, and how.

Hey @giftcardreloaded

Sorry to hear that our documentation let you down here. Can you link the page in our docs that you think needs an improvement? There’s a pop-in panel on the side of the Docs hub as well where you can directly submit feedback about a particular page.


Thanks for reaching out. I was not able to find relevant documentation through the search feature on the page. This pic is specifically for “–fast-list” (which I was almost certain would work), but I got a lot of unrelated articles for other combinations of fast list, fast-list and --fast-list

I’ve made this comment elsewhere, but it would be incredibly valuable to go beyond just listing out the different options or settings & saying what they do. Instead – where possible – engage with that content to explain why someone might want to choose one over the other.

1 Like

The --fast-list flag has cut down a lot on the Class C calls. I think I was getting ~100k calls every 12 hours before. Now it seems to be down to ~1000. I’ll follow up in case anything changes, but this seems to have done the trick. thanks chuck32!