supabase-postgres-best-practices
About supabase-postgres-best-practices
Supabase Postgres Best Practices is a reference skill maintained by Supabase for optimizing Postgres queries, schemas, and database operations. Its prioritized rules include performance, connections, security, concurrency, monitoring, and advanced features.
Key features
- 01Guidance across eight rule categories
- 02Prioritizes rules by expected impact
- 03Includes incorrect and corrected SQL examples
- 04Covers RLS and connection management
- 05Provides Postgres and Supabase references
Use cases
- 01Design or revise a Postgres schema
- 02Optimize queries and indexes
- 03Review database performance problems
- 04Configure pooling, scaling, or RLS
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ supabase-community/ supabase-plugin --skill supabase-postgres-best-practicesAfter installing, type/supabase-postgres-best-practicesin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
CHANGELOG.mdreferences/_contributing.md_sections.md_template.mdadvanced-full-text-search.mdadvanced-jsonb-indexing.mdconn-idle-timeout.mdconn-limits.mdconn-pooling.mdconn-prepared-statements.mddata-batch-inserts.mddata-n-plus-one.mddata-pagination.mddata-upsert.mdlock-advisory.mdlock-deadlock-prevention.mdlock-short-transactions.mdlock-skip-locked.mdmonitor-explain-analyze.mdmonitor-pg-stat-statements.mdmonitor-vacuum-analyze.mdquery-composite-indexes.mdquery-covering-indexes.mdquery-index-types.mdquery-missing-indexes.mdquery-partial-indexes.mdschema-constraints.mdschema-data-types.mdschema-foreign-key-indexes.mdschema-lowercase-identifiers.mdDetails
From the project READMESupabase 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:
references/query-missing-indexes.md
references/query-partial-indexes.md
references/_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)