diff --git a/app/finders/snippets_finder.rb b/app/finders/snippets_finder.rb
index 07b5759443b2cf8346cc34f3858b3196bfa87d8b..a41172816b817515d01bc7a3a98af0068ce2c8ba 100644
--- a/app/finders/snippets_finder.rb
+++ b/app/finders/snippets_finder.rb
@@ -4,7 +4,7 @@ class SnippetsFinder
 
     case filter
     when :all then
-      snippets(current_user).fresh.non_expired
+      snippets(current_user).fresh
     when :by_user then
       by_user(current_user, params[:user], params[:scope])
     when :by_project
@@ -27,7 +27,7 @@ class SnippetsFinder
   end
 
   def by_user(current_user, user, scope)
-    snippets = user.snippets.fresh.non_expired
+    snippets = user.snippets.fresh
 
     return snippets.are_public unless current_user
 
@@ -48,7 +48,7 @@ class SnippetsFinder
   end
 
   def by_project(current_user, project)
-    snippets = project.snippets.fresh.non_expired
+    snippets = project.snippets.fresh
 
     if current_user
       if project.team.member?(current_user.id)
diff --git a/app/helpers/snippets_helper.rb b/app/helpers/snippets_helper.rb
index 41ae404899294bf32a5a312eb574170d6acd3cc6..0a5a8eb5aeec8de8f353858e304c2743d5587756 100644
--- a/app/helpers/snippets_helper.rb
+++ b/app/helpers/snippets_helper.rb
@@ -1,14 +1,4 @@
 module SnippetsHelper
-  def lifetime_select_options
-    options = [
-        ['forever', nil],
-        ['1 day',   "#{Date.current + 1.day}"],
-        ['1 week',  "#{Date.current + 1.week}"],
-        ['1 month', "#{Date.current + 1.month}"]
-    ]
-    options_for_select(options)
-  end
-
   def reliable_snippet_path(snippet)
     if snippet.project_id?
       namespace_project_snippet_path(snippet.project.namespace,
diff --git a/app/models/personal_snippet.rb b/app/models/personal_snippet.rb
index 9cee3b70cb3ecf2f271320bfbf5ab57eceb9cc02..452f3913eef66cdb897ceae9bbd720e302dba8ee 100644
--- a/app/models/personal_snippet.rb
+++ b/app/models/personal_snippet.rb
@@ -10,7 +10,6 @@
 #  created_at       :datetime
 #  updated_at       :datetime
 #  file_name        :string(255)
-#  expires_at       :datetime
 #  type             :string(255)
 #  visibility_level :integer          default(0), not null
 #
diff --git a/app/models/project_snippet.rb b/app/models/project_snippet.rb
index 9e2c1b0e18e8413b344ff08ed7c52330ee2a5951..1f7d85a5f3d4b2e2f85ba8b10a1331baa31e6595 100644
--- a/app/models/project_snippet.rb
+++ b/app/models/project_snippet.rb
@@ -10,7 +10,6 @@
 #  created_at       :datetime
 #  updated_at       :datetime
 #  file_name        :string(255)
-#  expires_at       :datetime
 #  type             :string(255)
 #  visibility_level :integer          default(0), not null
 #
@@ -23,6 +22,4 @@ class ProjectSnippet < Snippet
 
   # Scopes
   scope :fresh, -> { order("created_at DESC") }
-  scope :non_expired, -> { where(["expires_at IS NULL OR expires_at > ?", Time.current]) }
-  scope :expired, -> { where(["expires_at IS NOT NULL AND expires_at < ?", Time.current]) }
 end
diff --git a/app/models/snippet.rb b/app/models/snippet.rb
index f876be7a4c8540ad104e1c086282def4183dd6dc..dd3925c7a7d4de8df3471c88e486ffa7219772b3 100644
--- a/app/models/snippet.rb
+++ b/app/models/snippet.rb
@@ -10,7 +10,6 @@
 #  created_at       :datetime
 #  updated_at       :datetime
 #  file_name        :string(255)
-#  expires_at       :datetime
 #  type             :string(255)
 #  visibility_level :integer          default(0), not null
 #
@@ -46,8 +45,6 @@ class Snippet < ActiveRecord::Base
   scope :are_public, -> { where(visibility_level: Snippet::PUBLIC) }
   scope :public_and_internal, -> { where(visibility_level: [Snippet::PUBLIC, Snippet::INTERNAL]) }
   scope :fresh,   -> { order("created_at DESC") }
-  scope :expired, -> { where(["expires_at IS NOT NULL AND expires_at < ?", Time.current]) }
-  scope :non_expired, -> { where(["expires_at IS NULL OR expires_at > ?", Time.current]) }
 
   participant :author, :notes
 
@@ -111,10 +108,6 @@ class Snippet < ActiveRecord::Base
     nil
   end
 
-  def expired?
-    expires_at && expires_at < Time.current
-  end
-
   def visibility_level_field
     visibility_level
   end
diff --git a/db/migrate/20160305220806_remove_expires_at_from_snippets.rb b/db/migrate/20160305220806_remove_expires_at_from_snippets.rb
new file mode 100644
index 0000000000000000000000000000000000000000..fc12b5b09e69fb2e893941e4c14c122f9a7501bd
--- /dev/null
+++ b/db/migrate/20160305220806_remove_expires_at_from_snippets.rb
@@ -0,0 +1,5 @@
+class RemoveExpiresAtFromSnippets < ActiveRecord::Migration
+  def change
+    remove_column :snippets, :expires_at, :datetime
+  end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 71d9257a31e3fd5e9b880b2248e5cf7c34303eaa..2d6b9b5a4cc68a248330d49792035336cf8a7f46 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
 #
 # It's strongly recommended that you check this file into your version control system.
 
-ActiveRecord::Schema.define(version: 20160222153918) do
+ActiveRecord::Schema.define(version: 20160305220806) do
 
   # These are extensions that must be enabled in order to support this database
   enable_extension "plpgsql"
@@ -777,7 +777,6 @@ ActiveRecord::Schema.define(version: 20160222153918) do
     t.datetime "created_at"
     t.datetime "updated_at"
     t.string   "file_name"
-    t.datetime "expires_at"
     t.string   "type"
     t.integer  "visibility_level", default: 0, null: false
   end
@@ -785,7 +784,6 @@ ActiveRecord::Schema.define(version: 20160222153918) do
   add_index "snippets", ["author_id"], name: "index_snippets_on_author_id", using: :btree
   add_index "snippets", ["created_at", "id"], name: "index_snippets_on_created_at_and_id", using: :btree
   add_index "snippets", ["created_at"], name: "index_snippets_on_created_at", using: :btree
-  add_index "snippets", ["expires_at"], name: "index_snippets_on_expires_at", using: :btree
   add_index "snippets", ["project_id"], name: "index_snippets_on_project_id", using: :btree
   add_index "snippets", ["updated_at"], name: "index_snippets_on_updated_at", using: :btree
   add_index "snippets", ["visibility_level"], name: "index_snippets_on_visibility_level", using: :btree
diff --git a/doc/api/notes.md b/doc/api/notes.md
index d4d63e825abe801e09dd17e282a22f6110a41790..85d4f0bafa27a5eab0a0322847536146fe1a44d9 100644
--- a/doc/api/notes.md
+++ b/doc/api/notes.md
@@ -145,7 +145,6 @@ Parameters:
     "state": "active",
     "created_at": "2013-09-30T13:46:01Z"
   },
-  "expires_at": null,
   "updated_at": "2013-10-02T07:34:20Z",
   "created_at": "2013-10-02T07:34:20Z"
 }
diff --git a/doc/api/project_snippets.md b/doc/api/project_snippets.md
index a7acf37b5bcc05b9e81fae2e1849b7d39607e4cf..fb802102e3a56f5190fe2ed54998f5e11aba89fd 100644
--- a/doc/api/project_snippets.md
+++ b/doc/api/project_snippets.md
@@ -51,7 +51,6 @@ Parameters:
     "state": "active",
     "created_at": "2012-05-23T08:00:58Z"
   },
-  "expires_at": null,
   "updated_at": "2012-06-28T10:52:04Z",
   "created_at": "2012-06-28T10:52:04Z"
 }
diff --git a/doc/web_hooks/web_hooks.md b/doc/web_hooks/web_hooks.md
index b82306bd1dabb45689dcc9e6328f0036f20c0388..e2b53c45ab180dfc7298764c2fe1938a6ba5e6c0 100644
--- a/doc/web_hooks/web_hooks.md
+++ b/doc/web_hooks/web_hooks.md
@@ -582,7 +582,6 @@ X-Gitlab-Event: Note Hook
     "created_at": "2015-04-09 02:40:38 UTC",
     "updated_at": "2015-04-09 02:40:38 UTC",
     "file_name": "test.rb",
-    "expires_at": null,
     "type": "ProjectSnippet",
     "visibility_level": 0
   }
diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index b021db8fa5b9f4547b90fae346625ddbbe523f4e..aa3d8fe8437ed403045cc96af036291474f4d205 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -141,7 +141,7 @@ module API
     class ProjectSnippet < Grape::Entity
       expose :id, :title, :file_name
       expose :author, using: Entities::UserBasic
-      expose :expires_at, :updated_at, :created_at
+      expose :updated_at, :created_at
     end
 
     class ProjectEntity < Grape::Entity
diff --git a/spec/models/project_snippet_spec.rb b/spec/models/project_snippet_spec.rb
index cc92eb0bd9f2cd098eefb8710b4ae9ef32e56244..e0feb606f78188734e6660e1e2fbc492c0a94edc 100644
--- a/spec/models/project_snippet_spec.rb
+++ b/spec/models/project_snippet_spec.rb
@@ -10,7 +10,6 @@
 #  created_at       :datetime
 #  updated_at       :datetime
 #  file_name        :string(255)
-#  expires_at       :datetime
 #  type             :string(255)
 #  visibility_level :integer          default(0), not null
 #
diff --git a/spec/models/snippet_spec.rb b/spec/models/snippet_spec.rb
index eb2dbbdc5a4eafba13290efd26e219556ca55d03..7e5b5499aeaa65b630cfa353d9486c9f70b893f2 100644
--- a/spec/models/snippet_spec.rb
+++ b/spec/models/snippet_spec.rb
@@ -10,7 +10,6 @@
 #  created_at       :datetime
 #  updated_at       :datetime
 #  file_name        :string(255)
-#  expires_at       :datetime
 #  type             :string(255)
 #  visibility_level :integer          default(0), not null
 #