AI와 개발을 쉽게 이해하는 실험실

비개발자도 따라오는 AI 도구, 자동화, 개발 실험 기록

개발 & 기술/데이터베이스

Supabase 무료 요금제 한계, 어디까지 무료로 쓸 수 있을까

루민 Lumin 2026. 7. 13. 15:03
반응형

Supabase 무료 요금제는 개인 프로젝트나 사이드 프로젝트를 시작하기에 충분하지만, 데이터베이스 500MB·스토리지 1GB·월 활성 사용자 5만 명이라는 한도를 넘기면 서비스가 일시 정지되거나 유료 전환이 필요합니다. 이 글은 무료 플랜의 정확한 한도, 실제로 그 한도에 어떻게 부딪히는지, 유료(Pro)로 넘어가야 하는 시점을 정리합니다. 처음 써보는 분들은 "무료니까 편하게 올려도 되겠지" 하고 프로젝트를 만들어두고 잊어버리곤 하는데, 여기에 함정이 하나 있습니다. 7일 동안 아무 요청이 없으면 프로젝트가 자동으로 멈춥니다. 저도 사이드 프로젝트 하나를 이렇게 잃을 뻔했습니다.

Supabase가 뭐길래

Supabase는 로그인, 데이터 저장, 파일 업로드 같은 백엔드 기능을 한 번에 제공하는 클라우드 서비스입니다. 개발자 사이에선 "오픈소스 Firebase"로 자주 불립니다.

쉽게 말하면 이렇습니다. 앱이나 웹사이트를 만들 때 사용자 계정 관리, 회원 데이터 저장, 이미지 업로드 같은 뒷단 작업이 필요한데, 이걸 직접 서버를 세워서 만들려면 최소 몇 주가 걸립니다. Supabase는 그 뒷단을 미리 만들어놓고 빌려주는 서비스입니다.

내부적으로는 PostgreSQL이라는 오래된 데이터베이스(대량의 정보를 정리해서 저장하는 프로그램)를 씁니다. 이 점이 중요한데, 뒤에서 다시 이야기하겠습니다.

BaaS(Backend as a Service, 백엔드를 서비스로 빌려 쓰는 방식)라는 분류에 속하고, 경쟁 서비스로는 Firebase, AWS Amplify 정도가 있습니다.

무료 요금제 핵심 한도 한눈에

Supabase 공식 가격 페이지(글 작성 시점 기준) 기준으로 무료 플랜의 주요 한도는 아래와 같습니다.

항목 무료 플랜 한도 초과 시
프로젝트 개수 최대 2개 추가 생성 불가
데이터베이스 용량 500MB 읽기 전용 전환 위험
파일 스토리지 1GB 업로드 차단
월 활성 사용자(MAU) 50,000명 유료 전환 안내
대역폭(월) 5GB 응답 제한
Edge Function 호출 월 50만 회 실행 실패
프로젝트 자동 일시정지 7일간 미사용 시 수동 재개 필요

숫자만 보면 관대해 보이지만, 실제로 부딪히는 벽은 대부분 데이터베이스 500MB7일 미사용 자동 정지 둘입니다. MAU 5만 명이나 Edge Function 50만 회는 개인 프로젝트로 도달하기 쉽지 않은 숫자입니다.

데이터베이스 500MB, 생각보다 빨리 참니다

500MB면 크게 느껴지지만, 로그성 데이터를 무심코 쌓으면 몇 주 만에 채워집니다. 텍스트 위주라도 로그 테이블 하나가 200MB를 훌쩍 넘기는 경우를 봤습니다.

제가 직접 겪은 사례를 하나 소개합니다. 챗봇 프로토타입을 만들면서 사용자와 AI의 대화 내역을 통째로 데이터베이스에 저장했는데, 하루 몇십 명 정도만 써도 대화 로그가 하루에 10~20MB씩 쌓였습니다. 두 달쯤 지났을 때 대시보드에 노란 경고가 떴습니다.

용량을 아끼는 팁 몇 가지를 정리하면 이렇습니다.

  • 대용량 텍스트·이미지 원본은 데이터베이스가 아닌 Storage(파일 저장소)에 올리고 링크만 저장
  • 로그성 데이터는 별도 서비스(Logflare, Axiom 등 무료 티어)로 분리
  • 오래된 데이터는 주기적으로 CSV로 내려받아 백업 후 삭제
  • pg_stat_user_tables 쿼리로 어떤 테이블이 커지는지 정기 점검
💡 대시보드의 Reports → Database 화면에서 현재 용량과 증가 추이를 볼 수 있습니다. 처음 프로젝트를 만들면 시스템 테이블만으로도 40~60MB 정도 차 있어서 실제 여유는 440MB 정도라고 생각하는 편이 안전합니다.

500MB를 넘기면 곧바로 서비스가 꺼지지는 않지만, 지속적으로 초과 상태면 읽기 전용으로 전환될 수 있다고 공식 문서에 명시돼 있습니다. 저장은 안 되고 조회만 되는 상태라, 사실상 서비스가 반쯤 죽는 셈입니다.

7일 자동 일시정지, 가장 무서운 함정

무료 프로젝트는 7일 동안 데이터베이스 요청이 하나도 없으면 자동으로 일시정지됩니다. 유료 플랜에는 없는 규정입니다.

일시정지 자체는 데이터가 사라지는 게 아니고, 대시보드에서 "Restore" 버튼 한 번이면 다시 살아납니다. 문제는 이런 상황들입니다.

  • 포트폴리오 사이트에 붙여둔 데모가 어느 순간부터 로그인이 안 됨
  • 지인에게 링크를 공유했는데 마침 그 주에 아무도 접속하지 않아 멈춤
  • 배포한 걸 잊고 있다가 몇 달 뒤 열어보니 프로젝트 자체가 삭제 예정 상태

공식 안내에 따르면 90일 이상 일시정지 상태가 지속되면 프로젝트가 삭제될 수 있다고 합니다. 이 부분은 사이드 프로젝트를 여러 개 굴리는 분들이 특히 조심해야 합니다.

간단한 회피법으로는 크론잡(정해진 시간에 자동으로 실행되는 작업) 서비스로 하루 한 번 아무 요청이나 보내주는 방법이 있습니다. GitHub Actions로 매일 오전 9시에 헬스체크 URL을 호출하도록 설정해두면 무료로 해결됩니다. 단, 이 방법이 Supabase 이용약관에 어긋나는지는 스스로 판단이 필요합니다 — 저는 개인 학습용 프로젝트에만 씁니다.

인증·스토리지·Edge Function은 어디까지?

이 세 가지는 개인 프로젝트 수준에서 무료 한도를 다 쓰기가 오히려 어렵습니다.

인증(Auth)은 월 활성 사용자 5만 명까지 무료입니다. 여기서 "활성 사용자"는 그 달에 한 번이라도 로그인한 사람을 뜻합니다. 등록만 하고 안 들어온 사람은 카운트되지 않습니다. 개인 프로젝트에서 월 5만 명 로그인은 사실상 잭팟에 가까운 규모라, 여기 걸릴 걱정은 거의 없습니다.

스토리지 1GB는 이미지 위주 서비스라면 좀 빠듯합니다. 스마트폰 사진 원본이 장당 3~5MB인 걸 감안하면, 사용자가 사진 몇 장씩만 올려도 200~300장이면 1GB가 찹니다. 대안으로는 업로드 시 자동 리사이즈(가로 1200px 정도)를 걸어 장당 200~400KB로 낮추는 방법이 무난합니다.

Edge Function은 서버가 없는 상태에서 짧은 코드를 실행해주는 기능입니다. 예를 들어 "이 사용자가 프리미엄 회원인지 확인하고 결과를 돌려줘" 같은 작은 함수를 올려두고 필요할 때 호출합니다. 월 50만 회는 소규모 서비스에선 잘 안 넘습니다.

기능 개인 프로젝트에서 부딪힐 가능성
데이터베이스 500MB 높음 — 몇 개월이면 도달
스토리지 1GB 중간 — 이미지 서비스면 빠름
인증 MAU 5만 매우 낮음
Edge Function 50만 회 매우 낮음
7일 자동 정지 매우 높음 — 방치 시 확정

Pro 플랜으로 언제 넘어가야 할까

Pro 플랜은 월 25달러(글 작성 시점 기준)이고, 데이터베이스 8GB·스토리지 100GB·자동 일시정지 없음이 핵심 차이입니다. 개인적으로는 아래 셋 중 하나에 해당하면 유료 전환을 진지하게 고민하라고 권합니다.

  1. 서비스에 실제 사용자가 붙어서 돈이든 트래픽이든 발생하기 시작할 때 — 무료 플랜에서 갑자기 읽기 전용으로 바뀌면 서비스가 멈춥니다.
  2. 포트폴리오·데모를 장기 노출해야 할 때 — 채용 담당자가 링크를 눌렀는데 "일시정지됨" 화면이 뜨면 곤란합니다.
  3. 데이터베이스 용량이 400MB를 넘겼을 때 — 남은 100MB는 며칠 만에 채워지곤 합니다.

반대로 아직 만들고 있는 단계, 혼자 테스트하는 단계, 지인 몇 명에게만 공유하는 단계라면 무료로 충분합니다. 저도 학습·실험용 프로젝트는 전부 무료 플랜에 두고 있습니다.

한 가지 덧붙이면, 무료 플랜에서 Pro로 올리는 건 대시보드에서 몇 번 클릭이면 끝나지만, 반대 방향(Pro → 무료) 은 데이터가 무료 한도 안에 있어야 가능합니다. 미리 정리 안 하면 다운그레이드가 막힙니다.

자주 막히는 부분

무료 플랜을 쓰면서 실제로 많이 걸리는 함정들을 정리합니다.

  • 프로젝트를 2개까지만 만들 수 있음: 3번째부터는 기존 걸 지우거나 유료 전환이 필요합니다. 실험용 프로젝트를 자꾸 만들다 보면 이 벽에 먼저 부딪힙니다.
  • 백업이 7일치만 유지됨: Pro는 하루 단위 백업이 자동으로 되지만, 무료는 최근 것만 남습니다. 중요한 데이터는 별도로 CSV 내보내기를 해두는 편이 안전합니다.
  • 대시보드 경고 이메일을 놓치기 쉬움: 용량 80% 도달 시 이메일이 오는데, 프로모션 메일로 걸러지는 경우가 많습니다. 필터 설정을 미리 봐두세요.
  • RLS(Row Level Security) 설정을 빼먹으면 모두 공개됨: 이건 요금제 이슈는 아니지만, 무료 플랜으로 처음 시작하는 분들이 가장 많이 겪는 사고입니다. 테이블을 만들면 기본이 "누구나 다 읽고 쓸 수 있음" 상태라, 반드시 정책을 걸어야 합니다.

마무리

Supabase 무료 요금제는 개인이 뭔가 만들어보기에 정말 넉넉한 편입니다. 500MB 데이터베이스와 1GB 스토리지, 그리고 7일 자동 정지 규칙만 기억하면 됩니다. 나머지 한도(MAU 5만, Edge Function 50만 회)는 개인 프로젝트 규모에서 부딪히기 어렵습니다.

지금 사이드 프로젝트를 시작한다면 무료로 충분히 만들어보고, 실제 사용자가 붙거나 용량이 80%를 넘겼을 때 Pro로 넘어가는 흐름이 가장 합리적입니다. 그 전에 대시보드의 Reports → DatabaseStorage 화면을 즐겨찾기 해두고, 월 1회 정도는 용량을 점검하는 습관만 들여도 갑작스러운 서비스 정지를 막을 수 있습니다.

함께 보면 좋은 글

반응형