diff --git a/lib/config/definitions.js b/lib/config/definitions.js
index 92e9422c9c6360a32bdc3395ac663516a6c1141c..7910f595fc868de5c3b017dfd73f812fad303c65 100644
--- a/lib/config/definitions.js
+++ b/lib/config/definitions.js
@@ -715,15 +715,6 @@ const options = [
     type: 'boolean',
     default: true,
   },
-  {
-    name: 'unstablePattern',
-    description: 'Regex for identifying unstable versions (docker only)',
-    stage: 'package',
-    type: 'string',
-    format: 'regex',
-    cli: false,
-    env: false,
-  },
   {
     name: 'followTag',
     description: 'If defined, packages will follow this release tag exactly.',
diff --git a/lib/config/presets.js b/lib/config/presets.js
index 9e7ad8bf801fa3aafdce80ee3f1eff3060d6f882..809c43a2a78b3148ab273717f1cbaecbd0f0fd95 100644
--- a/lib/config/presets.js
+++ b/lib/config/presets.js
@@ -230,7 +230,6 @@ async function getPreset(preset) {
     'excludePackageNames',
     'packagePatterns',
     'excludePackagePatterns',
-    'unstablePattern',
   ];
   if (presetKeys.every(key => packageListKeys.includes(key))) {
     delete presetConfig.description;
diff --git a/renovate-schema.json b/renovate-schema.json
index cd33efaf8114c4a3e7ea77fa81b61ef3f081b801..015cc3a4e56f19544dcd6e83a0f63ebabe97eaa6 100644
--- a/renovate-schema.json
+++ b/renovate-schema.json
@@ -462,11 +462,6 @@
       "type": "boolean",
       "default": true
     },
-    "unstablePattern": {
-      "description": "Regex for identifying unstable versions (docker only)",
-      "type": "string",
-      "format": "regex"
-    },
     "followTag": {
       "description": "If defined, packages will follow this release tag exactly.",
       "type": "string"
diff --git a/website/docs/configuration-options.md b/website/docs/configuration-options.md
index 11184606502c5dbb0becfd30c5e590413cb411aa..ed8362451dcfe28ad1dd62d6dbb7adacd86fae37 100644
--- a/website/docs/configuration-options.md
+++ b/website/docs/configuration-options.md
@@ -1143,12 +1143,6 @@ It is not known by many that npm package authors and collaborators can _delete_
 
 Enabling `unpublishSafe` will add a `renovate/unpublish-safe` status check with value pending to every branch to warn you about this possibility. It can be handy when used with the `prCreation` = `not-pending` configuration option - that way you won't get the PR raised until after a patch is 24 hours old or more.
 
-## unstablePattern
-
-Because Docker uses tags instead of semver, there is no fixed convention for how to identify unstable releases. e.g. some images may use semver convention like `v2.0.0-beta1` but others may use their own convention, like Node.js or Ubuntu even/odd.
-
-This field is currently used by some config prefixes.
-
 ## updateLockFiles
 
 ## updateNotScheduled