Agent Skills: Replit Cost Tuning

|

UncategorizedID: jeremylongshore/claude-code-plugins-plus-skills/replit-cost-tuning

Install this agent skill to your local

pnpm dlx add-skill https://github.com/jeremylongshore/claude-code-plugins-plus-skills/tree/HEAD/plugins/saas-packs/replit-pack/skills/replit-cost-tuning

Skill Files

Browse the full folder contents for replit-cost-tuning.

Download Skill

Loading file tree…

plugins/saas-packs/replit-pack/skills/replit-cost-tuning/SKILL.md

Skill Metadata

Name
replit-cost-tuning
Description
|

Replit Cost Tuning

Overview

Optimize Replit spending across deployment compute, seat licenses, egress, and storage. Covers right-sizing deployment resources, choosing between Autoscale and Reserved VM, eliminating idle Repls, and managing team seat costs.

Prerequisites

  • Replit account with billing access
  • Understanding of current deployment architecture
  • Access to usage metrics in Replit dashboard

Replit Pricing Model

| Component | Pricing | |-----------|---------| | Replit Core | $25/month (includes $8 flexible credits) | | Replit Pro | $40/month (team features + credits) | | Autoscale | Pay per compute unit consumed | | Reserved VM | From $0.20/day (~$6.20/month) | | Static Deploy | Free (CDN-backed) | | Egress | $0.10/GiB over monthly allowance | | PostgreSQL | Included in plan allowance | | Object Storage | Included in plan allowance |

Instructions

Step 1: Audit Deployment Costs

Review what you're spending and where:

In Replit Dashboard > Billing:
1. View "Usage" tab for compute breakdown
2. Sort by cost to find expensive Repls
3. Check "Always On" Repls (legacy) — convert to Deployments

Key metrics to check:
- CPU hours consumed per Repl
- Memory-hours consumed per Repl
- Egress data transfer per Repl
- Number of cold starts (Autoscale)

Step 2: Right-Size Deployment Resources

# Match resources to actual workload

micro:  # Simple bot, webhook receiver
  type: autoscale
  cost: "Pay per request (free when idle)"
  best_for: "< 1000 requests/day, tolerates cold starts"

small:  # Basic API or web app
  type: reserved_vm
  cpu: 0.25 vCPU
  memory: 512 MB
  cost: "~$6/month"
  best_for: "Low traffic, always-on required"

medium:  # Production web app
  type: reserved_vm
  cpu: 0.5 vCPU
  memory: 1 GB
  cost: "~$12/month"
  best_for: "Standard traffic, good response times"

large:  # Compute-heavy or high-traffic
  type: reserved_vm
  cpu: 2 vCPU
  memory: 4 GB
  cost: "~$40/month"
  best_for: "High traffic, background processing"

# Rule of thumb: if peak CPU < 30% and peak memory < 50%, downsize

Step 3: Choose Autoscale vs Reserved VM

Use AUTOSCALE when:
- Traffic is unpredictable or bursty
- App can tolerate 5-15s cold starts
- Many hours of zero traffic per day
- Low daily request count (< 5000)
- Cost: $0 when idle, proportional to traffic

Use RESERVED VM when:
- Traffic is consistent throughout the day
- App needs instant response times
- Running cron jobs, webhooks, or WebSocket
- Cost: fixed monthly, predictable
- Cheaper than Autoscale when utilization > 60%

Use STATIC when:
- Frontend-only app (HTML/CSS/JS)
- No server-side processing needed
- Cost: FREE (CDN-backed, auto-cached)

Step 4: Reduce Egress Costs

Egress (outbound data) costs $0.10/GiB over your plan allowance:

// Compress API responses
import compression from 'compression';
app.use(compression());  // gzip responses — reduces egress 60-80%

// Paginate large responses
app.get('/api/items', async (req, res) => {
  const limit = Math.min(parseInt(req.query.limit as string) || 50, 100);
  const { rows } = await pool.query('SELECT * FROM items LIMIT $1', [limit]);
  res.json(rows);
});

// Serve static assets from CDN, not Replit
// Use Cloudflare, Vercel, or other CDN for images/videos/large files
// Only serve API responses from Replit deployment

Step 5: Team Seat Optimization

Seat audit checklist:
1. Export member list: Team Settings > Members
2. Identify inactive members (no activity in 30+ days)
3. Remove or downgrade inactive members
4. Consider "Viewer" role for stakeholders who only need read access

Cost calculation:
- 15 seats at $25/month = $375/month
- Remove 4 inactive = $100/month savings = $1,200/year

Quarterly seat review:
- [ ] Export activity report
- [ ] Remove members with 0 activity in 30 days
- [ ] Downgrade read-only members to viewer
- [ ] Document seat allocation decisions

Step 6: Eliminate Idle Repls

In Replit Dashboard:
1. View all Repls by last edited date
2. Archive Repls not edited in 90+ days
3. Delete old test/experiment Repls
4. Convert "Always On" Repls to Deployments
   (Always On is legacy and more expensive)

Deployments to review:
- Is this deployed and unused? → Undeploy
- Is this Autoscale with zero traffic? → No cost (good)
- Is this Reserved VM with zero traffic? → Undeploy or switch to Autoscale

Step 7: Optimize PostgreSQL Usage

PostgreSQL costs:
- Included in plan credits
- Separate dev and prod databases (charged separately)
- Storage grows with data

Optimization:
- Delete old development databases
- Vacuum and clean up unused tables
- Archive old data to Object Storage
- Use KV Database for simple key-value (included, no extra cost)

Cost Monitoring Dashboard

// Track resource usage in your app
app.get('/admin/costs', requireAuth, (req, res) => {
  const mem = process.memoryUsage();
  res.json({
    deployment: {
      type: process.env.REPLIT_DEPLOYMENT_TYPE || 'unknown',
      uptime: process.uptime(),
      memoryMB: Math.round(mem.rss / 1024 / 1024),
    },
    database: {
      poolSize: pool.totalCount,
      activeConnections: pool.idleCount,
    },
    repl: {
      slug: process.env.REPL_SLUG,
      owner: process.env.REPL_OWNER,
    },
  });
});

Error Handling

| Issue | Cause | Solution | |-------|-------|----------| | Unexpected high bill | Reserved VM running unused | Undeploy or switch to Autoscale | | Egress overage | Serving large files from Repl | Move to CDN | | Seat costs growing | No quarterly audit | Schedule regular seat reviews | | Cold start complaints | Using Autoscale | Switch to Reserved VM for latency-sensitive apps |

Resources

Next Steps

For architecture planning, see replit-reference-architecture.