diff --git a/changelog.d/question-validator.fix b/changelog.d/question-validator.fix
new file mode 100644
index 000000000..91093daee
--- /dev/null
+++ b/changelog.d/question-validator.fix
@@ -0,0 +1 @@
+Polls could fail to refresh due to an incorrect data validation constraint.
diff --git a/lib/pleroma/web/activity_pub/object_validators/question_validator.ex b/lib/pleroma/web/activity_pub/object_validators/question_validator.ex
index 7f9d4d648..21754fa8a 100644
--- a/lib/pleroma/web/activity_pub/object_validators/question_validator.ex
+++ b/lib/pleroma/web/activity_pub/object_validators/question_validator.ex
@@ -59,6 +59,13 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.QuestionValidator do
     end
   end
 
+  defp fix_likes(data) do
+    cond do
+      is_list(data["likes"]) -> data
+      true -> Map.drop(data, ["likes"])
+    end
+  end
+
   defp fix(data) do
     data
     |> CommonFixes.fix_actor()
@@ -66,6 +73,7 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.QuestionValidator do
     |> CommonFixes.fix_quote_url()
     |> Transmogrifier.fix_emoji()
     |> fix_closed()
+    |> fix_likes()
   end
 
   def changeset(struct, data) do