diff --git a/src/generators/coreFormat.js b/src/generators/coreFormat.js
index 8953c1f3fb5c7dfe5711bbdba25adaef450617c7..4ffccc84fa89c80135ca47e37fa1e344870fbd11 100644
--- a/src/generators/coreFormat.js
+++ b/src/generators/coreFormat.js
@@ -13,6 +13,7 @@ const regexps = {
   hostname: '[a-zA-Z]{1,33}\\.[a-z]{2,4}',
   ipv6: '[a-f\\d]{4}(:[a-f\\d]{4}){7}',
   uri: URI_PATTERN,
+  slug: '[a-zA-Z\\d_-]+',
 
   // types from draft-0[67] (?)
   'uri-reference': `${URI_PATTERN}${PARAM_PATTERN}`,
diff --git a/src/types/string.js b/src/types/string.js
index b458bb2e62874da7127c852b264dc9e7eae51eb2..0e4e9870862731222f5a3cb4b8b8acf2247a063f 100644
--- a/src/types/string.js
+++ b/src/types/string.js
@@ -39,6 +39,7 @@ function generateFormat(value, invalid) {
     case 'idn-email':
     case 'idn-hostname':
     case 'json-pointer':
+    case 'slug':
     case 'uri-template':
     case 'uuid':
       return coreFormat(value.format);