The marketing site renders pricing from src/app/components/landing-page/pricing.tsx, which reads localized copy from src/i18n/messages/{locale}.json (Boilerplate.Pricing). This guide explains the baseline USD prices defined today and how to derive equivalent values in Brazilian Reais (BRL) and Mexican Pesos (MXN) for campaigns or localized landing pages.
| Tier | USD (one-time) | Value proposition |
|---|---|---|
| Starter | US$ 997 | Core Next.js + Supabase stack, auth, landing page components, dark/light mode. |
| Pro | US$ 1,997 | Everything from Starter plus Stripe billing, admin dashboards, blog/store modules, analytics, email templates, 50+ premium components. |
| Diamond | US$ 2,997 | Full suite adding AI chat (OpenAI/Gemini/Ollama), Resend emails, realtime notifications, advanced analytics, recommendations, lifetime updates, setup call. |
The values above are stored verbatim in the English locale file:
{
"Boilerplate": {
"Pricing": {
"tiers": {
"starter": { "price": "$997" },
"pro": { "price": "$1,997" },
"diamond": { "price": "$2,997" }
}
}
}
}Assumptions: 1 USD ≈ R 17.00 (Mexican Peso). Adjust the rates if the market changes.
| Tier | USD | BRL (≈ ×5) | MXN (≈ ×17) |
|---|---|---|---|
| Starter | 997 | **R 4.990,00) | MX$ 16,950 |
| Pro | 1,997 | **R 9.990,00) | MX$ 33,950 |
| Diamond | 2,997 | **R 14.990,00) | MX$ 50,950 |
Recommendations
pt or es, duplicate the tier entries in src/i18n/messages/pt.json and es.json, updating only the price/priceNote strings. The purchasing logic still references Stripe Price IDs (USD) through the admin interface.src/i18n/messages/pt.json):
"Boilerplate": {
"Pricing": {
"tiers": {
"diamond": {
"price": "R$ 14.990",
"priceNote": "≈ US$ 2.997 (one-time)"
}
}
}
}npm run dev or npm run build to propagate translations.priceId based on locale.Stripe sessions are created in src/app/api/stripe/create-checkout/route.ts. For a multi-currency strategy:
const priceId = choosePriceId({ tier, currency: locale === 'pt' ? 'BRL' : locale === 'es' ? 'MXN' : 'USD' });PricingClient so the UI knows which tier/price combination was selected.Consider bundling services (e.g., “Implementation Sprint” or “Custom branding”) as add-ons priced in BRL/MXN to increase ARPU in LATAM markets.
src/i18n/messages/* and any landing variants hosted on other platforms so they stay in sync.