I transitioned my recipe app with ~ 80,000 images from Cloudinary to a combination of Backblaze B2 + Bunny.net a few months ago. I heavily use the resizing and optimizing features.
It's saved me a ton of money, but if I could have used B2 + Cloudflare with their 0 bandwidth alliance, I could have saved more, I think - haven't done the math though.
In the grand scheme of things, though, I've worked with Bunny now and love the interface, and performance. The one time I contacted support, I spoke 1 on 1 with , I believe, the founder of Bunny. He was cool.
Cloudflare is doing some killer things, excited for that. But glad to see we have small name alternatives to everything (S3 to B2, Cloudflare to Bunny, etc) that can compete on price and functionality.
Good stuff, though! More options the better!
It seems like Cloudflare wants you to predefine all the "variants" (transformations) as specific templates in their GUI, whereas Cloudinary and Imgix are much more flexible and accept specific URL parameters to create those transformations.
EDIT: Actually, Cloudflare supports that too (https://developers.cloudflare.com/image-resizing/url-format), it just wasn't mentioned in this blog post.
Moral of the story is: if you’re going to play around with new features such as this (which I plan on doing!), set up a new account. Always, always compartmentalize.
A client of mine got a fraudulent impersonation/phishing-claim (completely ridiculous, the page in question is passive and contains no login ability, no 3rd party scripts besides GA) and CF automatically banned that subpage of the domain. You can appeal to their Trust & Safety team, but they either don't exist or are severely understaffed. It's been a month or so without any feedback, on the forums, people are talking about waiting for six months. Tech support will only "escalate" the issue to T&S where issues go to die.
It's a great way to boot competitors though: file a claim, their visitors will get a scary "Warning: Suspected Phishing Site Ahead!" page they need to actively dismiss, and the site owner can't fix it short or migrating away from CF. I'm guessing enterprise will buy you a direct line to someone who can do something though.
> You pay $5/month for every 100,000 stored images and $1 per 100,000 delivered images. There are no additional resizing, compute or egress costs.
Pricing seems really reasonable, and the resizing feature seems pretty slick.
Breakdown of delivery costs based on your image sizes:
Image size | Total bandwidth used | Effective cost per GB
10MB = 1000GB = $0.001 per GB
5MB = 500GB = $0.002 per GB
1MB = 100GB = $0.01 per GB
200KB = 20GB = $0.05 per GB
50KB = 5GB = $0.2 per GB
50KB = 5GB = $0.20 per GB
Which would make you want to break out the old school spriting tools :) I guess don't serve thumbnail galleries from CF.
> You only pay for original images; not variants
I would like to define a pipeline of Workers that get to act on the request / response and count the whole pipeline as a single Worker run as long as I stay within the limits for normal workers. That way I can write composable, reusable workers that perform very specific tasks (like pipes). There could even be a GUI to let me enable / disable parts of the pipeline.
I can do that right now by jamming everything into a single source file, but it would feel better (to me) as a pipeline. It would also be cool if I could stick (headless) Cloudflare apps that are glorified workers into a pipeline like that (at a specific position).
Something that I've found difficult in the Cloudflare ecosystem is understanding the order of execution for everything (access, cache, workers, apps, page rules, etc.). It would be useful to have a dedicated resource that lists that.
Also, the preview pages for every app I've looked at today give an unsafe content warning [1].
Cloudflare seems to have a much more cohesive vision for their cloud than AWS does, and I think it could be a competitive advantage for them.
That’s one reason why I haven’t checked out Cloudflare Pages, my (already statically hosted) website will unlikely be DDoSed and I wouldn’t want to impact user experience by adding random browser checks…
Beyond that:
• You can turn down the sensitivity of the challenge pages: https://support.cloudflare.com/hc/en-us/articles/200170056-U... • Since Cloudflare Pages is fully hosted on us, we can soak the DDoS and don’t have to worry about letting things through to origin infrastructure. Benefit of serving directly from the edge :-)
(I work at Cloudflare, if that’s not clear)
For example, when you click the share button in Safari on an iPad, it'll download every `link rel="icon"` image you list in html even though it doesn't need them. It would be really awesome to use a worker to inspect the user agent and modify responses to return exactly what's needed for that client.
The pricing for this service won't work for favicons since the cost per response is way too high, but I honestly think it'd be worth $5 / month if I could just upload a SVG favicon for my site and click a button to "Optimize Favicons".
<img src="/images/logo.png?size=200,200">
For the customers that enabled Cloudflare proxying, they could automatiacally serve a 200x200px variant of the image hosted on my server at /images/logo.png.
This would allow to use the feature without needing to upload the images explicitely.
For those not using the Cloudflare proxying, the images could be embedded using something like this:
<img src="https://imageproxy.cloudflare.com/mysite.com/images/logo.png...">
You create a worker that understands your URL scheme, and requests images via Cloudflare with the desired size/parameters: https://developers.cloudflare.com/image-resizing/resizing-wi...
Or, you can just use Cloudflare's built-in URL scheme for resizing arbitrary URLs: https://developers.cloudflare.com/image-resizing/url-format
I guess the breakeven is ~500k images served each month, otherwise Cloudflare would be cheaper.
Aren’t most photos taken by recent phones > 10MB? I know my DSLR pictures certainly are.
Asking out of curiosity. I am not the target audience for this product.
If you look at https://httparchive.org/reports/state-of-images?lens=top1m&s... for 2021 you'll see images are way smaller than 10MB on the web.
I would've thought the workflow for these would be to upload a high quality source, and then the service creates lower quality/optimised variants.
I guess you have a limit as it is priced on total images stored and not storage/cpu used...
EDIT: I just checked, 2.5% of source images are over 10mb.
An easy solution might be to have it accept an upload of a larger file, but automatically scale it down to fit under 10mb and then only store that as the new original.
Here is an example I just pulled off the front page of the NYT website. I'm sure it was originally a 10+MB image taken on a iphone or DSLR but it was compressed/scaled down to a 510kb webp image for display on the web.
https://static01.nyt.com/images/2021/09/17/sports/baseball/1...
The Cloudflare Image Resizing service this product is based on has been increasing its max size, and it supports 100MB images.
Say I have hundreds of gigabytes of images "somewhere". How can I start using that with Cloudflare?
I think this is great for new stuff, or small projects, but for the larger and older projects, it's a non-starter.
but when the "somewhere" is S3, AWS egress costs can easily fund Bezos' next space trip. To fix that, Cloudflare now added cheap storage.
Asking as this could look very attractive (£ wise) for a project with images stored in Uploadcare where it would be feasible for us to do the source-image migration.
(Ofc, another caveat is how accurate do they monitor and report, but---short of running customer sentiment analysis---I don't seem to have a choice other than to assume that factor is roughly equal.)
I guess it's a David-to-Goliath comparison but I would just expect Cloudflare to have better reliability than any of them. Plus, as another reply pointed out, brand recognition helps in getting that budget approval.
The reliability isn't great though. "Elevated Rendering Errors" almost always is "increased errors rendering uncached derivative images". Basically any image variant - by file and transformation/dimension parameters - that hasn't been viewed recently won't load. So a srcset homepage hero image probably has all size variations a user might see in Imgix's cache, and will render. But on less-traveled parts of our site, photos generally won't load. We're a rather image-heavy site and it's pretty debilitating to the UX when this happens, so it's frustrating that this happens more than the "almost never" rate we'd wish for. FWIW, we've never noticed problems on their end that aren't closely followed by an incident report in their status page, so they're not under-reporting at least.
In general though, CF just nail every version of what they do so I'd personally go with their version of it even if it's the same.
Is being a cloudflare fanboi a thing yet?
This can be handled by a CMS. E.g. Media Cloud, a WordPress plugin that integrates with IMGIX.
Coming from an enterprise getting approval to use a new SaaS vendor is painful.
But if a existing vendor has new product offering, you skip a lot of painful TPS style application forms.
I have images that can change occasionally and when I upload an image I want to find and delete the previous version so I don't end up with many variations.
You pay $5/month for every 100,000 stored images and $1 per 100,000 delivered images.
that is for a cache-MISS or a cache-HIT (I assume).Is there a use case here for an org that stores original, unresized images in S3 and JIT resizes them on the fly with Cloudflare workers?
https://almanac.httparchive.org/en/2020/page-weight#image-by...
A 10MB limit per image seems like it will cover everything but outliers.
> - […]
> - Analytics to better understand your use of Images.
Nice „feature“
I have a client with a Cloudflare Pro subscription. They've received about 57 million image requests through Cloudflare in the last month, of which the origin has only served 2 million, and the Cloudflare Cache has served the rest.
If we used Cloudflare Images, would it cost $570 to transfer those 57 million images? Or would the Cloudflare Cache significantly reduce the number of transfers attributed to Cloudflare Images?
Are there certain categories of people who CloudFlare refuses to have as customers?
(I know there are SOME -- for example, as a US company CloudFlare is subject to US trade restrictions.)
As you mentioned, anyone on one of the various US sanction lists. Additionally, anything illegal under US law (particularly CSAM, warez and other kinds of piracy), as well as terrorist/violent content (as the "Islamic State", 8chan, Daily Stormer and a select few others found out the hard way).