Claude-code-plugins-plus-skills shopify-cost-tuning

install
source · Clone the upstream repo
git clone https://github.com/jeremylongshore/claude-code-plugins-plus-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jeremylongshore/claude-code-plugins-plus-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/saas-packs/shopify-pack/skills/shopify-cost-tuning" ~/.claude/skills/jeremylongshore-claude-code-plugins-plus-skills-shopify-cost-tuning && rm -rf "$T"
manifest: plugins/saas-packs/shopify-pack/skills/shopify-cost-tuning/SKILL.md
source content

Shopify Cost Tuning

Overview

Optimize Shopify app and API costs through plan analysis, API usage monitoring, and strategies to minimize billable API calls. Covers Shopify store plans, Partner app billing, and API efficiency.

Prerequisites

  • Access to Shopify Partner Dashboard for app billing
  • Understanding of current API usage patterns
  • Knowledge of merchant's Shopify plan

Instructions

Step 1: Understand Shopify Plan Rate Limits

API rate limits are determined by the merchant's plan, not your app:

Merchant PlanREST BucketREST Leak RateGraphQL PointsGraphQL Restore
Basic Shopify40 requests2/second1,000 points50/second
Shopify40 requests2/second1,000 points50/second
Advanced40 requests2/second1,000 points50/second
Shopify Plus80 requests4/second2,000 points100/second

Key insight: Upgrading from Basic to Advanced doesn't help rate limits. Only Plus doubles them.

Step 2: App Billing API

If your app charges merchants, use the GraphQL

appSubscriptionCreate
mutation to create recurring charges. Set
test: true
in development to avoid real billing.

See App Billing API for the complete mutation and variable setup.

Step 3: Monitor API Usage

Track GraphQL query costs and REST call counts over time to identify optimization opportunities. Log

extensions.cost.actualQueryCost
from every GraphQL response.

See Usage Tracker Class for a complete tracking implementation with reporting.

Step 4: Cost Reduction Strategies

Four key strategies: replace REST with GraphQL for targeted field selection, use bulk operations for exports, cache responses and invalidate via webhooks, and use Storefront API for public data.

See Cost Reduction Strategies for code examples of each approach.

Output

  • API usage monitored with cost tracking
  • Rate limit-efficient query patterns
  • App billing configured (if charging merchants)
  • Cost reduction strategies applied

Error Handling

IssueCauseSolution
Frequent throttlingHigh query costReduce fields, use bulk ops
High hosting costsToo many API callsCache responses, use webhooks
App billing rejectionTest mode not setUse
test: true
in development
Merchant cancelsUnexpected chargesClear billing in app onboarding

Examples

Quick Usage Check

// After every GraphQL call, log the cost
const response = await client.request(query);
const cost = response.extensions?.cost;
if (cost) {
  console.log(
    `Query cost: ${cost.actualQueryCost}/${cost.throttleStatus.maximumAvailable} ` +
    `(${cost.throttleStatus.currentlyAvailable} available)`
  );
}

Resources