6
17 Comments

Where do you keep your media files?

Do you mind sharing were you keep media files(images and videos) of your website? and what is the cost?

Let's say user profile pictures

posted to Icon for group Developers
Developers
on May 7, 2020
  1. 3

    It depends. If it's kind of MVP or not a big project, well, directly on VPS.

    Really, if it's 1 Mb per picture and you have 1000 users, than you'll need 1 Gb. Not that much.

    If it's something big than amazon S3 or https://www.digitalocean.com/products/spaces/. I love digital ocean because of their pleasant UI, while in amazon I event cannot sign up for some reasons =(

    1. 2

      There are multiple reasons not to have your files on your servers:

      • make media files available faster to clients, S3 with Cloudfront scales
      • never have problems with changing a hosting, yours files are always stored externally
      • save money for VPS, storage on S3 costs less than server disks
      1. 1

        I agree with you, but still I think it depends on the size of the project. Although contemporary frameworks like Laravel allows you easily integrate S3, so yeah, it'd good option to use cloud

    2. 1

      Spaces is good for their price but takes a lot from you - they don't provide http2 which is very necessary now! I'm looking for an alternative solution other than aws.

  2. 2

    I think I'm going to move to https://cloudinary.com/ soon. Free, looks easy to set up and they have a very extensive API for transforming images.

    Found them in the Gatsby documentation

    1. 1

      Exactly that's what I've been using. The free tier is too huge for you to consume as a startup. I don't know their business model but I think it's just like Google's. you pay more as soon us you scale up

      1. 1

        I've been using Cloudinary for years and I'm super happy with them. Such a powerful and easy to use service; it saves a ton of effort. The pricing is pretty reasonable even at the higher tiers for images. Where they get you is videos, just because they use so much more bandwidth. I had to move the landing page background video off of Cloudinary onto S3 for my last startup because it was costing too much. But for photos, I strongly believe it's the right choice.

  3. 2

    Last week B2 made their storage S3 compatible also I heard they have excellent CDN integration(without extra charge).
    https://www.backblaze.com/b2/cloud-storage.html

    Other good option is Digital Ocean Spaces, S3 is bit expensive on bandwidth side. Azure is very easy to use and price is similar to S3.

  4. 1

    I second the »store everything local for as long as you can«. It's easy and prevents unexpected costs.

    If you need to scale and the European GDPR is an issue, the »volumes« of Hetzner's cloud offers are a viable option: https://www.hetzner.de/cloud

    1. 1

      But storing everything local won't be easy to scale. In case you're supposed to scale and then decide to go for cloud. You'll have to move all those files and update all URL references in your database. Isn't that going to hurt?

      1. 1

        Storing everything locally is the easiest solution to start with. Moving your media someplace else and update some file references might be something you'll end up doing eventually.

        But when we are really just talking about profile pictures and the like, that need might never come up. But if you scale that huge that it will be an issue, a little script to move files and update their references will be an easy and welcome thing to do.

        That's what I would go for: be pragmatic for now, solve the scaling issue later.

  5. 1

    S3 is probably the way to go and the cheaper one. Put there behind a CDN like CloudFront, fastly or Cloudflare, and call it a day.

  6. 1

    Directly on a shared hosting + free Cloudflare on top of it with cache-everything option. This means that mp4 videos will also be served by Cloudflare's CDN.

  7. 1

    I usually start with local disk. Every project I work on has a layer of file system abstraction (Laravel provides it out of the box). When I need to use something like an S3 bucket, I change a few lines of config, and run a command to move every file in local to the new bucket.

  8. 1

    Hi Farhan, I’d give Firebase a try! They have a “cloud storage” option with an incredibly generous free-tier. They also have tons of other amazing features (like database stores, hosting, analytics, etc.) but their storage is very useful.

    1. 1

      Be little cautious, Firebase (cloud) storage is expensive after a level.

  9. 3

    This comment was deleted 5 years ago.

Trending on Indie Hackers
I spent $0 on marketing and got 1,200 website visitors - Here's my exact playbook User Avatar 67 comments Veo 3.1 vs Sora 2: AI Video Generation in 2025 🎬🤖 User Avatar 31 comments I built eSIMKitStore — helping travelers stay online with instant QR-based eSIMs 🌍 User Avatar 21 comments 🚀 Get Your Brand Featured on FaceSeek User Avatar 20 comments Day 6 - Slow days as a solo founder User Avatar 16 comments Why I'm Done Juggling 10 SaaS Tools (And You Should Be Too) User Avatar 9 comments