Where Does Jekyll Store Cache and Config?
Jekyll keeps its cache and metadata inside your site folder (.jekyll-cache and .jekyll-metadata), with _config.yml as the settings file.
Last updated
Jekyll stores its working state inside the site folder itself, which makes it easy to find and easy to mistake for content. The .jekyll-cache folder holds build caches, .jekyll-metadata tracks incremental rebuild state, and _site is the generated output. None of these belong in version control.
The file that matters is _config.yml at the site root. That is the whole settings story: no registry, no AppData, no per-user config. Move the site folder and everything meaningful moves with it.
Where Jekyll stores this, by platform
[SiteDir]\.jekyll-cache
Cache, metadata, config, and output all sit beside your content. Delete .jekyll-cache when builds act stale. Exclude _site, .jekyll-cache, and .jekyll-metadata from git; keep _config.yml.
[SiteDir]/.jekyll-cache
Same in-folder layout as other platforms. Gems and Ruby versions live wherever your manager (rbenv, RVM, system) puts them; the site folder itself stays self-contained.
[SiteDir]/.jekyll-cache
Same arrangement. Bundle installs gems into the system or vendor path, but every Jekyll-specific file (config, cache, metadata, output) stays under the site root.
Frequently asked questions
My site shows outdated content after editing. What do I delete?
Delete .jekyll-cache and rebuild. The cache speeds up repeat builds but goes stale in confusing ways, and Jekyll recreates it from scratch on the next build.
Which Jekyll files are safe to gitignore?
Yes. _site is pure output and .jekyll-cache plus .sass-cache are scratch. Keep _config.yml, your collections, and anything you wrote. The metadata file preserves incremental state between builds, so deleting it just forces a full rebuild.
Notice an outdated path? Let us know.