Grunt plugin for generating sitemaps
Latest commit 3146b24 Oct 13, 2015 @counterbeing counterbeing Merge pull request #33 from qapital/master
Strip all trailing slashes


A Grunt plugin for generating sitemaps

NPM version Dependency Status devDependency Status


This plugin requires Grunt ~0.4.5.

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-sitemap --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:



sitemap is a multitask, so you can use it similarly to lint, watch etc...


  sitemap: {
    dist: {
      pattern: ['**/*.html', '!**/google*.html'], // this will exclude 'google*.html'
      siteRoot: 'public/'




  • Type: string
  • Default: ./

Site (public root) directory relative to your Gruntfile.js file. This is where indexing will begin and your sitemap be saved to.


  • Type: string
  • Default: /**/*.html

Pattern to match website files. Excludes 404.html by default and converts index.html to directory path /. See minimatch for more on pattern matching.


  • Type: string
  • Default: read from package.json

Site URL including protocol: e.g. If the homepage field is specified in your package.json, it will be used from there.


  • Type: string
  • Default: daily

Set this to override <changefreq> in sitemap.


  • Type: string
  • Default: 0.5

Set this to override <priority> in sitemap.


  • Type: object
  • Default: { required: true }


extension: {
  required: false

If you need a trailing slash just set the attribute trailingSlash: true. E.g.

extension: {
  required: false,
  trailingSlash: true

By default the <loc> tag is generated for paths that contains file extensions. E.g.: .html or .htm. If you don't want URLs with file extensions to be included in your sitemap, just add the attribute extension: { required: false }. This will output URLs without file extensions.


We accept pull requests! A special thanks to XhmikosR for keeping things rolling.