diff --git a/changelog/entries/unreleased/bug/3444_fix_urlresolution_query_param_null_check.json b/changelog/entries/unreleased/bug/3444_fix_urlresolution_query_param_null_check.json
new file mode 100644
index 000000000..2afe28bb0
--- /dev/null
+++ b/changelog/entries/unreleased/bug/3444_fix_urlresolution_query_param_null_check.json
@@ -0,0 +1,7 @@
+{
+    "type": "bug",
+    "message": "Fixed null check for query parameters in link URL generation",
+    "issue_number": 3444,
+    "bullet_points": [],
+    "created_at": "2025-02-17"
+}
diff --git a/e2e-tests/tests/builder/builderPage.spec.ts b/e2e-tests/tests/builder/builderPage.spec.ts
index ce241c6c1..4785e6061 100644
--- a/e2e-tests/tests/builder/builderPage.spec.ts
+++ b/e2e-tests/tests/builder/builderPage.spec.ts
@@ -110,6 +110,7 @@ test.describe("Builder page test suite", () => {
     await expect(page.locator(".box__title").getByText("Page")).toBeHidden();
     await page.getByText('Click to create an element').click();
     await page.getByText('Link A link to page/URL').click();
+    await page.getByLabel('my_param=').fill("foo")
     await page.getByRole('complementary').getByRole('textbox').click();
     await page.getByRole('complementary').getByRole('textbox').locator('div').first().fill('linkim');
     await page.locator('a').filter({hasText: 'Make a choice'}).click();
@@ -120,7 +121,7 @@ test.describe("Builder page test suite", () => {
     await page.getByText('my_param', { exact: true }).first().click();
     await page.click('body')
     await expect(page.getByRole('link', {name: 'linkim'})).toHaveAttribute(
-      'href', /\?my_param=null/);
+      'href', /\?my_param=foo/);
 
   });
 });
diff --git a/web-frontend/modules/builder/utils/urlResolution.js b/web-frontend/modules/builder/utils/urlResolution.js
index 89b6b89c1..363aa2326 100644
--- a/web-frontend/modules/builder/utils/urlResolution.js
+++ b/web-frontend/modules/builder/utils/urlResolution.js
@@ -67,6 +67,7 @@ export default function resolveElementUrl(
       .map(({ name, value }) => {
         if (!value) return null
         const resolvedValue = resolveFormula(value)
+        if (!resolvedValue && String(resolvedValue) !== '0') return null
         return `${encodeURIComponent(name)}=${encodeURIComponent(
           resolvedValue
         )}`