diff --git a/datasette/templates/table.html b/datasette/templates/table.html
index f3749b57..e3c6f38d 100644
--- a/datasette/templates/table.html
+++ b/datasette/templates/table.html
@@ -1,7 +1,6 @@
{% extends "base.html" %}
-{% block title %}{{ database }}: {{ table }}: {% if filtered_table_rows_count or filtered_table_rows_count == 0 %}{{ "{:,}".format(filtered_table_rows_count) }} row{% if filtered_table_rows_count == 1 %}{% else %}s{% endif %}{% endif %}
- {% if human_description_en %}where {{ human_description_en }}{% endif %}{% endblock %}
+{% block title %}{{ database }}: {{ table }}: {% if filtered_table_rows_count or filtered_table_rows_count == 0 %}{{ "{:,}".format(filtered_table_rows_count) }} row{% if filtered_table_rows_count == 1 %}{% else %}s{% endif %}{% endif %}{% if human_description_en %} {{ human_description_en }}{% endif %}{% endblock %}
{% block extra_head %}
{{ super() }}
diff --git a/tests/test_table_html.py b/tests/test_table_html.py
index 50d679a0..f68e05a5 100644
--- a/tests/test_table_html.py
+++ b/tests/test_table_html.py
@@ -1038,3 +1038,22 @@ def test_sort_rowid_with_next(app_client):
def assert_querystring_equal(expected, actual):
assert sorted(expected.split("&")) == sorted(actual.split("&"))
+
+
+@pytest.mark.parametrize(
+ "path,expected",
+ (
+ (
+ "/fixtures/facetable",
+ "fixtures: facetable: 15 rows",
+ ),
+ (
+ "/fixtures/facetable?on_earth__exact=1",
+ "fixtures: facetable: 14 rows where on_earth = 1",
+ ),
+ ),
+)
+def test_table_page_title(app_client, path, expected):
+ response = app_client.get(path)
+ title = Soup(response.text, "html.parser").find("title").text
+ assert title == expected