What this prompt does
This prompt makes the AI run a decisive REST-versus-GraphQL decision framework, giving a recommendation rather than a both-sides essay. You provide the [team_size], the [traffic], and the [main_pain]. It returns three scored options (stay REST, add a GraphQL gateway over REST, or fully migrate), a cost/benefit comparison across over-fetching, caching, schema evolution, tooling, latency, and observability, the single biggest risk of each, a clear recommendation tied to your team and traffic, a phased rollout with exit criteria, and the cheapest reversible first step.
The structure works because teams often ask to "add GraphQL" when the real problem is one over-fetching screen, and a full migration would be the wrong call. Forcing an honest score before committing a quarter prevents that. [team_size] and [traffic] anchor the recommendation in your actual constraints, and [main_pain] keeps the analysis pointed at the real problem rather than a generic comparison.
When to use it
- A stakeholder is pushing GraphQL and you need an honest, scored decision.
- You're not sure whether your pain justifies a gateway or a full migration.
- You want the tradeoffs scored on caching, schema evolution, and observability.
- You need a recommendation anchored to your team size and traffic.
- You want a phased rollout with exit criteria, not an all-or-nothing leap.
- You want the cheapest reversible first step to validate the direction.
Example output
You get a comparison table followed by the recommendation and rollout plan: three options scored (stay REST, add a GraphQL gateway over REST, or fully migrate); a cost/benefit comparison across over-fetching, client needs, caching, schema evolution, tooling maturity, latency, and observability; the single biggest risk of each option; a clear recommendation tied to [team_size] and [traffic]; a phased rollout plan with exit criteria per phase; and the cheapest reversible first step to validate the choice.
Pro tips
- Start with the cheapest reversible step in deliverable 6 — most teams never need the full migration once they fix the one screen driving the pain.
- State
[main_pain]concretely (like "mobile over-fetching on the dashboard"), since a vague pain produces a generic comparison instead of a decision. - Be honest about
[team_size], because GraphQL's tooling and schema-governance overhead lands differently on a small team than a large one. - Give real
[traffic]numbers so the caching analysis is grounded; GraphQL's caching story differs sharply from REST's at high volume. - Push the AI to name the single biggest risk per option and not soften it, so the decision is made with eyes open.
- Treat the phased rollout's exit criteria as commitments; if a phase doesn't meet them, that's the signal to stop rather than push on.