diff --git a/common/parsers/qwen3-coder.cpp b/common/parsers/qwen3-coder.cpp
index 7938a20279..208f551f1b 100644
--- a/common/parsers/qwen3-coder.cpp
+++ b/common/parsers/qwen3-coder.cpp
@@ -23,8 +23,9 @@ common_chat_params common_chat_params_init_qwen3_coder(const common_chat_templat
if (supports_reasoning) {
data.thinking_start_tag = "";
// Support both and as reasoning end sequences.
+ // The newline variant comes first so it is included in the forced message
// ", "" };
+ data.thinking_end_tags = { "\n", "", "" };
data.preserved_tokens.insert(data.preserved_tokens.end(), { "", "" });
}