TL;DR
Gatsby is alive but niche. For most new projects, Next.js or Astro are better choices. Gatsby still wins for content-heavy sites with complex multi-CMS data sourcing — but that's a narrow use case. Use Gatsby if you have an existing Gatsby site or need its plugin ecosystem; otherwise, start with Astro or Next.js.
Gatsby's Position in 2026
Gatsby pioneered GraphQL-based static site generation, the plugin ecosystem, and tight CMS integrations. But the JAMstack landscape shifted dramatically over the past few years:
- Next.js App Router made SSG and SSR equally convenient, eliminating Gatsby's SSG advantage
- Astro delivered better performance for content sites with 0KB JavaScript by default
- Netlify (which acquired Gatsby Inc.) shifted focus, and Gatsby development slowed
Gatsby's npm downloads peaked in 2021 at 400k/week and have declined to roughly 180k/week in 2026. Still used, but no longer the growing category leader it once was. The key question for any new project: can Gatsby's specific strengths justify its trade-offs against modern alternatives?
The honest answer for 2026: Gatsby is the right choice in fewer situations than three years ago. Next.js App Router handles SSG just as well as Gatsby ever did, and Astro ships zero JavaScript by default for content sites. But for the specific use case of aggregating content from multiple CMSes into a unified static output, Gatsby's plugin ecosystem remains unmatched.
Quick Comparison
| Starter | Use Case | Maintained | TypeScript | Best For |
|---|---|---|---|---|
| gatsby-starter-blog | Blog | ✅ | ✅ | Gatsby learning, existing Gatsby users |
| gatsby-starter-default | General | ✅ | ✅ | Starting point, minimal setup |
| gatsby-contentful-starter | Contentful CMS | ✅ | ✅ | Content sites with Contentful |
| Gatsby + Ghost | Ghost CMS | ✅ | ✅ | Publication sites |
The Starters
gatsby-starter-blog — Official Blog
Price: Free | Creator: Gatsby team | GitHub Stars: 7k+
The official Gatsby blog starter. MDX posts, syntax highlighting, RSS feed generation, SEO meta tags, and GraphQL-based content querying. Maintained by Netlify since acquiring Gatsby Inc.
npm install -g gatsby-cli
gatsby new my-blog https://github.com/gatsbyjs/gatsby-starter-blog
cd my-blog && gatsby develop
Features included:
- MDX blog posts with frontmatter
- Syntax highlighting via
gatsby-remark-prismjs - RSS feed via
gatsby-plugin-feed - SEO component with Open Graph tags
- Responsive typography (Typography.js)
- GraphQL data layer
This starter is the best entry point for anyone new to Gatsby. The codebase is clean, well-commented, and demonstrates Gatsby's fundamental patterns: GraphQL queries in page components, the gatsby-node.js programmatic API for creating pages from data, and the plugin system for transforming markdown to HTML. If you're evaluating Gatsby for a project, start here before committing to anything more complex.
Choose if: You're already invested in Gatsby or need Gatsby's specific plugin ecosystem for an existing site.
gatsby-starter-default — Official Minimal
Price: Free | Creator: Gatsby team
The official blank-slate Gatsby starter. React, Gatsby's plugin system, basic SEO component, and Tailwind CSS setup. Fewer opinions than gatsby-starter-blog — you build the structure yourself.
gatsby new my-site https://github.com/gatsbyjs/gatsby-starter-default
The default starter is best used as a learning project or when you're adding Gatsby to a context that doesn't fit the blog model. The minimal structure exposes Gatsby's configuration surface more directly: gatsby-config.js, gatsby-node.js, and gatsby-browser.js are all there but mostly empty, ready for you to define your own data sources and page creation logic.
Choose if: You want to understand Gatsby's structure without a pre-built blog, or you need a completely blank canvas.
gatsby-contentful-starter — Best Headless CMS Integration
Price: Free | Creator: Gatsby team
Gatsby connected to Contentful headless CMS. Uses gatsby-source-contentful to pull content at build time and generate static pages. The killer use case for Gatsby: complex content models with relationships, multiple content types, and structured data.
// gatsby-config.js
module.exports = {
plugins: [
{
resolve: 'gatsby-source-contentful',
options: {
spaceId: process.env.CONTENTFUL_SPACE_ID,
accessToken: process.env.CONTENTFUL_ACCESS_TOKEN,
host: process.env.GATSBY_ENV === 'development'
? 'preview.contentful.com'
: 'cdn.contentful.com',
},
},
],
};
The Contentful starter demonstrates Gatsby's real superpower: pulling structured content from an external CMS at build time, generating typed GraphQL schema, and creating pages with minimal boilerplate. Content editors work in Contentful's polished UI; the static site rebuilds on every content change.
Choose if: You're using Contentful and need a static frontend that rebuilds on content changes.
Gatsby + Ghost — Best Publication Platform
Price: Free | Creator: Community
Ghost as a headless CMS with Gatsby as the static frontend. Ghost provides the editor and content API; Gatsby fetches at build time and generates a static site. Excellent for publications that need a polished editing experience combined with Gatsby's static performance.
The combination gives you Ghost's Koenig editor, newsletter capabilities, and membership management on the backend, with Gatsby's image optimization and static delivery on the frontend. Build times are longer than a pure static approach, but the editing experience is significantly better than MDX files for non-technical content teams.
Choose if: You're building a media publication and want Ghost's editor with Gatsby's static performance.
The GraphQL Data Layer
Gatsby's unique feature is its unified GraphQL data layer. Every data source — MDX files, CMS APIs, databases, REST APIs — becomes queryable through the same GraphQL interface:
query BlogListingQuery {
allMdx(sort: { frontmatter: { date: DESC } }) {
nodes {
id
frontmatter {
title
date(formatString: "MMMM DD, YYYY")
description
tags
}
fields {
slug
}
}
}
}
This unification shines when you have multiple data sources — Contentful for main content, Airtable for pricing tables, Shopify for product data — all queryable together. No other framework offers this out of the box. The GraphQL playground at localhost:8000/__graphql during development lets you explore your complete data graph interactively.
When Gatsby Still Makes Sense
Gatsby's plugin ecosystem solves specific problems better than alternatives:
- Multiple data sources —
gatsby-source-*plugins for Contentful, Sanity, WordPress, Shopify, Airtable, and 2,000+ others in one GraphQL layer - Image optimization —
gatsby-plugin-imageis still excellent, with automatic WebP/AVIF, lazy loading, and blur-up placeholders - Incremental builds — Only rebuild changed pages (via Gatsby Cloud/Netlify), critical for sites with thousands of pages
- Existing Gatsby sites — Migration cost is rarely worth it for working production sites
- Complex content types — GraphQL schema customization for deeply nested content structures
The multi-source data aggregation case is where Gatsby remains the best tool. If your site pulls content from WordPress for articles, Shopify for products, Airtable for event listings, and a REST API for pricing — Gatsby's unified GraphQL layer handles this more elegantly than any alternative.
Performance Benchmarks
Gatsby sites can achieve excellent Core Web Vitals when configured correctly:
| Metric | Gatsby (optimized) | Next.js (optimized) | Astro |
|---|---|---|---|
| LCP | ~1.2s | ~1.1s | ~0.9s |
| CLS | 0 | 0 | 0 |
| FID/INP | ~80ms | ~70ms | ~40ms |
| Bundle Size | ~150KB | ~100KB | ~10KB |
The performance gap between Gatsby and Astro is real for content-only sites where Astro ships zero JavaScript. For Gatsby, configure gatsby-plugin-image correctly and enable resource hints for near-equivalent LCP scores. The bundle size difference matters most for mobile users on slower connections, where Astro's 10KB vs Gatsby's 150KB translates directly to faster time-to-interactive.
Honest Alternatives in 2026
For most use cases that historically used Gatsby:
| Use Case | Instead of Gatsby, Use |
|---|---|
| Blog | Astro — 0KB JS default, excellent markdown support |
| E-commerce | Next.js Commerce — Vercel's maintained e-commerce starter |
| Documentation | Astro Starlight or Hugo Docsy |
| Marketing site | Astro or Next.js |
| Complex multi-CMS data | Gatsby still wins here |
| Portfolio | Astro Nano or Hugo PaperMod |
The pattern is clear: Gatsby gets the edge only when multi-source data aggregation is central to the project. For everything else, Astro's performance advantage and simpler mental model win.
Migration: Is It Worth It?
If you have an existing Gatsby site, the honest answer is: probably not.
- Gatsby still builds and deploys fine
- Gatsby's performance is acceptable for most use cases
- Migration from Gatsby to Next.js/Astro takes 2-4 weeks of engineering time
- The benefit (faster builds, fewer dependencies) may not justify the cost
Migrate when:
- Build times exceed 10 minutes on Gatsby
- You need features Gatsby doesn't support (Server Components, streaming SSR)
- Dependencies have security vulnerabilities not being patched
- Your team is struggling with Gatsby's GraphQL overhead
Keep Gatsby when:
- It's working fine in production
- The team knows it well
- The plugin ecosystem is solving real problems (especially
gatsby-source-*) - You're using incremental builds with Netlify
Incremental builds through Netlify are one of Gatsby's strongest practical arguments for staying put. For sites with 10,000+ pages, rebuilding only changed pages on each content update saves hours of CI/CD time weekly.
Getting Started
# Install Gatsby CLI
npm install -g gatsby-cli
# Create a new project
gatsby new my-project
# Start development server (localhost:8000)
gatsby develop
# Build for production
gatsby build
# Serve production build locally
gatsby serve
Gatsby requires Node.js 18+. The development server includes hot reloading and the GraphQL playground at localhost:8000/__graphql.
Deployment Options
Gatsby deploys to any static hosting provider:
- Netlify — The natural home (acquired Gatsby Inc.). Best incremental builds support
- Vercel — Works well, though Vercel optimizes for Next.js
- GitHub Pages — Free hosting for public repositories
- Cloudflare Pages — Free tier with fast CDN globally
All support automatic deploys from Git push. Netlify's incremental builds are uniquely valuable for large Gatsby sites — rebuilding only changed pages rather than the full site on every content update.
Key Takeaways
- Gatsby's npm downloads have declined from 400k/week (peak 2021) to ~180k/week in 2026
- The GraphQL data layer remains the best solution for multi-CMS data aggregation
- For new projects: Astro wins for content sites, Next.js wins for SaaS
- For existing Gatsby projects: migration is rarely worth the cost unless build times are a problem
- gatsby-contentful-starter is the strongest use case for Gatsby in 2026
Gatsby Plugin Ecosystem: The Practical Value
Gatsby's plugin system is the most mature in the React SSG ecosystem. The gatsby-source-* plugin category — plugins that pull external data into Gatsby's GraphQL layer at build time — is where Gatsby still has no equals. When you need to aggregate content from multiple external sources into a unified site, the alternatives require more custom code.
The plugins that have proven valuable in production:
gatsby-source-contentful: Pulls all Contentful content types into GraphQL, with type generation and preview supportgatsby-source-wordpress: Transforms a WordPress REST API into a full Gatsby data layer, preserving blocks, ACF fields, and post relationshipsgatsby-source-shopify: Pulls product catalog, collections, and metafields into GraphQL for static e-commerce pagesgatsby-plugin-sharp/gatsby-plugin-image: Automatic image processing, WebP/AVIF conversion, lazy loading, and LQIP placeholders at build timegatsby-plugin-sitemap: Auto-generates sitemaps from all pages in the GraphQL layergatsby-plugin-feed: Generates RSS/Atom feeds from any GraphQL data source
The gatsby-plugin-image implementation deserves specific mention: its StaticImage component handles images that are always the same source, and GatsbyImage handles dynamic images from the data layer. Both process images at build time to generate responsive srcsets, apply WebP/AVIF conversion, and generate low-quality placeholders. This build-time processing is more thorough than runtime image optimization in Next.js Image (which processes on first request).
Gatsby v5 and the Current State
Gatsby 5 (released in 2022, still the current major version in 2026) brought React 18 support, the Slice API (for shared components that don't rebuild on every page), and Head API (for document head management without additional libraries). These are genuine improvements over Gatsby 4, but they didn't close the gap with Next.js App Router.
The meaningful feature differences between Gatsby 5 and Next.js 15 for static sites:
- Gatsby: GraphQL data layer, mature plugin ecosystem, build-time data sourcing from 2,000+ sources
- Next.js: React Server Components, streaming SSR, Server Actions, API routes, larger ecosystem
For new projects without complex multi-source data requirements, Next.js 15 is the more forward-looking choice. Gatsby 5 is the better choice when the plugin ecosystem's data sourcing capabilities are specifically what you need.
Build Performance at Scale
Build times are Gatsby's most significant operational pain point. Large sites (10,000+ pages, 50,000+ images) can take 20–30 minutes to build from scratch. Netlify's incremental builds (rebuilding only changed pages) mitigate this in production — a content change to one post triggers a 2–3 minute incremental build rather than a 25-minute full build.
For teams not using Netlify, Gatsby Cloud (Netlify's hosted Gatsby service) offers the same incremental build capabilities. Self-hosted Gatsby builds do not support incremental builds — every build is a full rebuild. This is a practical reason to use Netlify as your deployment platform if you're committed to Gatsby.
At smaller scales (under 1,000 pages), build times are not an issue. The incremental build problem is specifically relevant for large media sites, documentation sites with thousands of pages, and e-commerce sites with large product catalogs.
Compare Gatsby, Next.js, and Astro starters in the StarterPick boilerplate directory.
See how Gatsby compares to Next.js boilerplates and Astro starters for content sites.
Browse all static site starters on StarterPick to find the right framework for your project.
See also: best Astro boilerplates 2026 — if you're evaluating Astro as a Gatsby alternative, this guide covers the top options side by side.