Build faster and focus on your products
Open source, real-time database with built-in authentication and integrated services to accelerate development.
Authentication
User management with row level security and social login providers including GitHub and Google.
Database
Postgres database with real-time subscriptions and automatic API generation.
Auto-generated APIs
Instant RESTful and GraphQL APIs that evolve with your database schema.
Storage
Store and serve large files from multiple providers including AWS S3 and Cloudflare R2.
Edge Functions
Deploy custom code globally with Edge Functions powered by Deno runtime.
Dashboard
Manage your database, view real-time data, and monitor usage with built-in admin dashboard.
Postgres Database
Build faster with a full-featured Postgres database, complete with real-time subscriptions, automatic API generation, and powerful extensions.
-- Create a table
CREATE TABLE todos (
id serial PRIMARY KEY,
task text,
completed boolean DEFAULT false,
user_id uuid REFERENCES auth.users
);
-- Enable real-time subscriptions
ALTER TABLE todos
ENABLE ROW LEVEL SECURITY;
Real-time Subscriptions
Listen to database changes in real-time via websockets. Perfect for collaborative features and live updates.
Row Level Security
Built-in security policies ensure users can only access their own data. Declarative and simple to implement.
Foreign Key Relationships
Create complex data models with foreign key relationships. Automatically reflected in the generated API.
Authentication & Authorization
Complete user management with multiple auth providers, row level security, and built-in user administration.
Multiple Auth Providers
Support for email/password, magic links, and OAuth providers including Google, GitHub, and more.
User Management
Built-in user administration, password resets, and email verification workflows.
Row Level Security
Declarative access policies that integrate directly with your database schema.
const { data, error } = await supabase.auth.signUp({
email: 'example@email.com',
password: 'example-password',
})
// Sign in with OAuth provider
const { data, error } = await supabase.auth.signInWithOAuth({
provider: 'github'
})
// Access user session
const session = supabase.auth.session()
Edge Functions
Deploy serverless functions globally with zero configuration. Powered by Deno runtime for maximum performance and security.
// Create Edge Function
export async function handler(req: Request) {
try {
const { name } = await req.json()
const message = `Hello ${name}!`
return new Response(
JSON.stringify({ message }),
{ headers: { 'Content-Type': 'application/json' } }
)
} catch (error) {
return new Response(error.message, { status: 500 })
}
}
Global Deployment
Deploy functions to edge locations worldwide for minimal latency and maximum performance.
Secure by Default
Built on Deno's secure runtime with strict permissions and isolated execution environments.
Zero Configuration
Deploy directly from your project with zero configuration. Automatic scaling and load balancing included.
Simple, transparent pricing
Start for free, scale as you grow. No hidden fees or surprises.
Free
Perfect for side projects and hobby development
- Up to 100K API requests
- 500MB database space
- Community support
Pro
For production applications and growing teams
- Up to 1M API requests
- 8GB database space
- Daily backups
- Priority support
Enterprise
For large-scale applications and custom needs
- Unlimited API requests
- Unlimited database space
- 99.99% SLA
- Dedicated support
Frequently asked questions
Can I switch plans at any time?
Yes, you can upgrade, downgrade, or cancel your plan at any time. Pro-rated refunds are available for upgrades.
What payment methods do you accept?
We accept all major credit cards and process payments through Stripe. Enterprise customers can pay via invoice.
Do you offer a free trial?
Yes, all paid plans come with a 14-day free trial. No credit card required to start.
Built for developers, by developers
Powerful APIs, comprehensive documentation, and developer-first tools to build faster.
// Initialize the client
const supabase = createClient(
'https://your-project.supabase.co',
'your-anon-key'
)
// Fetch data
const { data, error } = await supabase
.from('countries')
.select('name, capital')
.order('name')
interface Country {
id: number
name: string
capital: string
}
const { data, error } = await supabase
.from<Country>('countries')
.select('*')
.eq('name', 'Singapore')
.single()
Type-Safe APIs
First-class TypeScript support with auto-generated types from your database schema.
Powerful Query Builder
Intuitive interface for complex queries with filtering, sorting, and pagination.
Real-time Subscriptions
Subscribe to database changes and receive real-time updates via WebSocket connections.
Documentation
Comprehensive guides, API reference, and examples to get you started quickly.
View docsExample Projects
Explore open-source projects and templates to jumpstart development.
Browse examplesTrusted by developers worldwide
Join thousands of developers and companies building with Supabase
"Supabase has transformed how we build applications. The real-time features and built-in authentication saved us months of development time."
"The developer experience is unmatched. PostgreSQL + modern tooling is exactly what we needed for our stack."
"Switching to Supabase cut our infrastructure costs by 60% while improving performance. It's a game-changer."