Supabase Postgres Best Practices

supabase's avatarfrom supabase
579stars🔀33forks📁View on GitHub🕐Updated Jan 1, 1970

When & Why to Use This Skill

This Claude skill provides a comprehensive suite of Postgres performance optimization techniques and best practices maintained by Supabase. It empowers developers to write high-efficiency SQL, design scalable database schemas, and implement robust security protocols. By leveraging expert-level rules across query tuning, connection management, and Row-Level Security (RLS), it ensures your database remains performant, secure, and reliable under heavy workloads.

Use Cases

  • Query Optimization: Identifying and fixing slow-running SQL queries by applying missing indexes and optimizing execution plans.
  • Schema Design: Reviewing and refining database architectures to ensure optimal data types, normalization, and scalability.
  • Security Implementation: Auditing and implementing Row-Level Security (RLS) policies to protect sensitive data directly at the database layer.
  • Performance Troubleshooting: Diagnosing bottlenecks in connection pooling, locking mechanisms, and data access patterns to improve application responsiveness.
  • Code Review: Providing automated, expert-level feedback on SQL scripts and database migrations during the development lifecycle.
namesupabase-postgres-best-practices
descriptionPostgres performance optimization and best practices from Supabase. Use this skill when writing, reviewing, or optimizing Postgres queries, schema designs, or database configurations.
licenseMIT
authorsupabase
version"1.0.0"

Supabase Postgres Best Practices

Comprehensive performance optimization guide for Postgres, maintained by Supabase. Contains rules across 8 categories, prioritized by impact to guide automated query optimization and schema design.

When to Apply

Reference these guidelines when:

  • Writing SQL queries or designing schemas
  • Implementing indexes or query optimization
  • Reviewing database performance issues
  • Configuring connection pooling or scaling
  • Optimizing for Postgres-specific features
  • Working with Row-Level Security (RLS)

Rule Categories by Priority

Priority Category Impact Prefix
1 Query Performance CRITICAL query-
2 Connection Management CRITICAL conn-
3 Security & RLS CRITICAL security-
4 Schema Design HIGH schema-
5 Concurrency & Locking MEDIUM-HIGH lock-
6 Data Access Patterns MEDIUM data-
7 Monitoring & Diagnostics LOW-MEDIUM monitor-
8 Advanced Features LOW advanced-

How to Use

Read individual rule files for detailed explanations and SQL examples:

rules/query-missing-indexes.md
rules/schema-partial-indexes.md
rules/_sections.md

Each rule file contains:

  • Brief explanation of why it matters
  • Incorrect SQL example with explanation
  • Correct SQL example with explanation
  • Optional EXPLAIN output or metrics
  • Additional context and references
  • Supabase-specific notes (when applicable)

Full Compiled Document

For the complete guide with all rules expanded: AGENTS.md