diff --git a/lib/philomena_web/controllers/profile/tag_change_controller.ex b/lib/philomena_web/controllers/profile/tag_change_controller.ex
index 84610fe1..21524d4b 100644
--- a/lib/philomena_web/controllers/profile/tag_change_controller.ex
+++ b/lib/philomena_web/controllers/profile/tag_change_controller.ex
@@ -28,10 +28,16 @@ defmodule PhilomenaWeb.Profile.TagChangeController do
       |> order_by(desc: :id)
       |> Repo.paginate(conn.assigns.scrivener)
 
+    # params.permit(:added, :only_tag) ...
+    pagination_params =
+      [added: conn.params["added"], only_tag: conn.params["only_tag"]]
+      |> Keyword.filter(fn {k, _v} -> Map.has_key?(conn.params, "#{k}") end)
+
     render(conn, "index.html",
       title: "Tag Changes for User `#{user.name}'",
       user: user,
-      tag_changes: tag_changes
+      tag_changes: tag_changes,
+      pagination_params: pagination_params
     )
   end
 
diff --git a/lib/philomena_web/templates/profile/tag_change/index.html.slime b/lib/philomena_web/templates/profile/tag_change/index.html.slime
index 88bd7e45..563a7fc3 100644
--- a/lib/philomena_web/templates/profile/tag_change/index.html.slime
+++ b/lib/philomena_web/templates/profile/tag_change/index.html.slime
@@ -4,20 +4,16 @@ h1
     = @user.name
 
 - route = fn p -> Routes.profile_tag_change_path(@conn, :index, @user, p) end
-- only_tag = if is_binary(@conn.params["only_tag"]) && @conn.params["only_tag"] != "", do: @conn.params["only_tag"]
-- only_tag_param = (if only_tag, do: [only_tag: only_tag], else: [])
-- params = (if @conn.params["added"], do: [added: @conn.params["added"]], else: []) ++ only_tag_param
-- pagination = render PhilomenaWeb.PaginationView, "_pagination.html", page: @tag_changes, route: route, conn: @conn, params: params
+- pagination = render PhilomenaWeb.PaginationView, "_pagination.html", page: @tag_changes, route: route, conn: @conn, params: @pagination_params
 
 .block
   .block__header
     = form_for @conn, Routes.profile_tag_change_path(@conn, :index, @user), [method: "get", enforce_utf8: false], fn f ->
-      input.input name="only_tag" title="Only show this tag." value=only_tag placeholder="Tag" autocapitalize="none"
-      button.button type="submit" title="Search"
-        i.fa.fa-search
+      = text_input f, :only_tag, class: "input", placeholder: "Tag", title: "Only show this tag", autocapitalize: "none"
+      = submit "Search", class: "button", title: "Search"
 
-      = link "Removed", to: Routes.profile_tag_change_path(@conn, :index, @user, [added: 0] ++ only_tag_param)
-      = link "Added", to: Routes.profile_tag_change_path(@conn, :index, @user, [added: 1] ++ only_tag_param)
-      = link "All", to: Routes.profile_tag_change_path(@conn, :index, @user, only_tag_param)
+      = link "Removed", to: Routes.profile_tag_change_path(@conn, :index, @user, Keyword.merge(@pagination_params, added: 0))
+      = link "Added", to: Routes.profile_tag_change_path(@conn, :index, @user, Keyword.merge(@pagination_params, added: 1))
+      = link "All", to: Routes.profile_tag_change_path(@conn, :index, @user, Keyword.delete(@pagination_params, :added))
 
   = render PhilomenaWeb.TagChangeView, "index.html", conn: @conn, tag_changes: @tag_changes, pagination: pagination