diff --git a/Library/Homebrew/cask/cask.rb b/Library/Homebrew/cask/cask.rb
index 710753fa4a6630ca80f00ce9e948a7eeacf57cc4..bdda5b6e77d47883428ba35f3c3039230bc9d39b 100644
--- a/Library/Homebrew/cask/cask.rb
+++ b/Library/Homebrew/cask/cask.rb
@@ -155,6 +155,7 @@ module Cask
       {
         "token"          => token,
         "name"           => name,
+        "desc"           => desc,
         "homepage"       => homepage,
         "url"            => url,
         "appcast"        => appcast,
diff --git a/Library/Homebrew/cask/cmd/create.rb b/Library/Homebrew/cask/cmd/create.rb
index 43145bfc3560ab128b91aebc3dedab4f18e91cb0..0c9e44ed42297c31343ea6a210ae0950fa820ba5 100644
--- a/Library/Homebrew/cask/cmd/create.rb
+++ b/Library/Homebrew/cask/cmd/create.rb
@@ -30,6 +30,7 @@ module Cask
 
             url "https://"
             name ""
+            desc ""
             homepage ""
 
             app ""
diff --git a/Library/Homebrew/cask/dsl.rb b/Library/Homebrew/cask/dsl.rb
index 87b83e8d3f3928b62a208a8d038ec8daf3be25a0..3f5ec39412c5201e6d84ac7ad996f0782781ffea 100644
--- a/Library/Homebrew/cask/dsl.rb
+++ b/Library/Homebrew/cask/dsl.rb
@@ -64,6 +64,7 @@ module Cask
                             :caveats,
                             :conflicts_with,
                             :container,
+                            :desc,
                             :depends_on,
                             :homepage,
                             :language,
@@ -93,6 +94,10 @@ module Cask
       @name.concat(args.flatten)
     end
 
+    def desc(description = nil)
+      set_unique_stanza(:desc, description.nil?) { description }
+    end
+
     def set_unique_stanza(stanza, should_return)
       return instance_variable_get("@#{stanza}") if should_return
 
diff --git a/Library/Homebrew/rubocops/cask/constants/stanza.rb b/Library/Homebrew/rubocops/cask/constants/stanza.rb
index 00335bb1f240df2b2bcf23b08cedd9a28593a9e9..e0bda8dc7bb52e986dfb188369e667bb493ead1e 100644
--- a/Library/Homebrew/rubocops/cask/constants/stanza.rb
+++ b/Library/Homebrew/rubocops/cask/constants/stanza.rb
@@ -6,7 +6,7 @@ module RuboCop
     module Constants
       STANZA_GROUPS = [
         [:version, :sha256],
-        [:url, :appcast, :name, :homepage],
+        [:url, :appcast, :desc, :name, :homepage],
         [
           :auto_updates,
           :conflicts_with,
diff --git a/Library/Homebrew/test/cask/cmd/create_spec.rb b/Library/Homebrew/test/cask/cmd/create_spec.rb
index d656e90d44f8a8572a93e8f95a1a57373f795b0b..ab9a0c95b228a43277393858f7a5766f87d89868 100644
--- a/Library/Homebrew/test/cask/cmd/create_spec.rb
+++ b/Library/Homebrew/test/cask/cmd/create_spec.rb
@@ -35,6 +35,7 @@ describe Cask::Cmd::Create, :cask do
 
         url "https://"
         name ""
+        desc ""
         homepage ""
 
         app ""
diff --git a/Library/Homebrew/test/cask/cmd/list_spec.rb b/Library/Homebrew/test/cask/cmd/list_spec.rb
index 82a486b0d5b8a23652961bdd3441f330363bd0d6..b3af63e31f324ea9024c726d682bf396c0f10356 100644
--- a/Library/Homebrew/test/cask/cmd/list_spec.rb
+++ b/Library/Homebrew/test/cask/cmd/list_spec.rb
@@ -90,7 +90,7 @@ describe Cask::Cmd::List, :cask do
     let(:casks) { ["local-caffeine", "local-transmission"] }
     let(:expected_output) {
       <<~EOS
-        [{"token":"local-caffeine","name":[],"homepage":"https://brew.sh/","url":"file:///usr/local/Homebrew/Library/Homebrew/test/support/fixtures/cask/caffeine.zip","appcast":null,"version":"1.2.3","sha256":"67cdb8a02803ef37fdbf7e0be205863172e41a561ca446cd84f0d7ab35a99d94","artifacts":[["Caffeine.app"]],"caveats":null,"depends_on":{},"conflicts_with":null,"container":null,"auto_updates":null},{"token":"local-transmission","name":["Transmission"],"homepage":"https://brew.sh/","url":"file:///usr/local/Homebrew/Library/Homebrew/test/support/fixtures/cask/transmission-2.61.dmg","appcast":null,"version":"2.61","sha256":"e44ffa103fbf83f55c8d0b1bea309a43b2880798dae8620b1ee8da5e1095ec68","artifacts":[["Transmission.app"]],"caveats":null,"depends_on":{},"conflicts_with":null,"container":null,"auto_updates":null}]
+        [{"token":"local-caffeine","name":[],"desc":null,"homepage":"https://brew.sh/","url":"file:///usr/local/Homebrew/Library/Homebrew/test/support/fixtures/cask/caffeine.zip","appcast":null,"version":"1.2.3","sha256":"67cdb8a02803ef37fdbf7e0be205863172e41a561ca446cd84f0d7ab35a99d94","artifacts":[["Caffeine.app"]],"caveats":null,"depends_on":{},"conflicts_with":null,"container":null,"auto_updates":null},{"token":"local-transmission","name":["Transmission"],"desc":null,"homepage":"https://brew.sh/","url":"file:///usr/local/Homebrew/Library/Homebrew/test/support/fixtures/cask/transmission-2.61.dmg","appcast":null,"version":"2.61","sha256":"e44ffa103fbf83f55c8d0b1bea309a43b2880798dae8620b1ee8da5e1095ec68","artifacts":[["Transmission.app"]],"caveats":null,"depends_on":{},"conflicts_with":null,"container":null,"auto_updates":null}]
       EOS
     }
 
diff --git a/Library/Homebrew/test/cask/dsl_spec.rb b/Library/Homebrew/test/cask/dsl_spec.rb
index 949a1c804f728add4f5c528682e8993b5db9a943..cebf4c1af7c63779840ec7a3f9ba473cca53a81c 100644
--- a/Library/Homebrew/test/cask/dsl_spec.rb
+++ b/Library/Homebrew/test/cask/dsl_spec.rb
@@ -107,6 +107,16 @@ describe Cask::DSL, :cask do
     end
   end
 
+  describe "desc stanza" do
+    it "lets you set the description via a desc stanza" do
+      cask = Cask::Cask.new("desc-cask") do
+        desc "The package's description"
+      end
+
+      expect(cask.desc).to eq("The package's description")
+    end
+  end
+
   describe "sha256 stanza" do
     it "lets you set checksum via sha256" do
       cask = Cask::Cask.new("checksum-cask") do