diff --git a/Changelog.md b/Changelog.md
index 9978a7964e8bd9c7f508b373a21c847d3128cb17..df185b620a76c08ebd6e157c6a8097a63ebd8e48 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -2,6 +2,9 @@
 
 All notable changes to this project will be documented in this file.
 
+## [0.44] - 2023-12-07
+- COMP-329: User getting redirected with wrong year of survey
+
 ## [0.43] - 2023-12-07
 - COMP-306: Renamed PIONEER to PSNC
 - COMP-268: Renamed ANAS to AzScienceNet
diff --git a/compendium_v2/routes/survey.py b/compendium_v2/routes/survey.py
index 35766d19748433c9c1e82a547cf6bb25011f2d7b..f11c28e55fa7d6ff3cc77cdc164dabde57ff69ef 100644
--- a/compendium_v2/routes/survey.py
+++ b/compendium_v2/routes/survey.py
@@ -46,6 +46,42 @@ LIST_SURVEYS_RESPONSE_SCHEMA = {
     'items': {'$ref': '#/definitions/survey'}
 }
 
+SURVEY_ACTIVE_YEAR_RESPONSE_SCHEMA = {
+    "$schema": "http://json-schema.org/draft-07/schema#",
+    "type": "object",
+    "properties": {
+        "year": {
+            "type": "string"
+        }
+    },
+    "required": ["year"],
+    "additionalProperties": False
+}
+
+
+@routes.route('/active/year', methods=['GET'])
+@common.require_accepts_json
+@login_required
+def get_active_survey_year() -> Any:
+    """
+    retrieve a year of latest active survey
+
+    response will be formatted as:
+
+    .. asjson::
+        compendium_v2.routes.survey.SURVEY_ACTIVE_YEAR_RESPONSE_SCHEMA
+
+    """
+
+    survey_record = db.session.query(Survey.year).filter(
+            Survey.status == SurveyStatus.open
+            ).order_by(Survey.year.desc()).first()
+    if survey_record:
+        year = survey_record.year
+        return {'year': year}
+    else:
+        return {'message': 'No open survey found.'}, 404
+
 
 @routes.route('/list', methods=['GET'])
 @common.require_accepts_json
diff --git a/setup.py b/setup.py
index dd4fdc87ff4a5364c141b2ab7307a6beac6ef64d..e84798caaa2ecbbd0741971f6bfedc08c4024dbd 100644
--- a/setup.py
+++ b/setup.py
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
 
 setup(
     name='compendium-v2',
-    version="0.43",
+    version="0.44",
     author='GEANT',
     author_email='swd@geant.org',
     description='Flask and React project for displaying '
diff --git a/survey-frontend/src/Landing.tsx b/survey-frontend/src/Landing.tsx
index c57e21ec39253d08d896b8c0c9ff2a201b62c08d..b18d24640302a06b5b2cd1d581010147cabb809d 100644
--- a/survey-frontend/src/Landing.tsx
+++ b/survey-frontend/src/Landing.tsx
@@ -2,7 +2,7 @@ import React, { ReactElement, useContext, useState, useEffect } from "react";
 import { useNavigate, Link } from "react-router-dom";
 import { Table, Container, Row } from "react-bootstrap";
 import { userContext } from "./providers/UserProvider";
-import { fetchSurveys } from "./api/survey";
+import { fetchSurveys, fetchActiveSurveyYear } from "./api/survey";
 import { Survey } from "./api/types";
 
 
@@ -16,9 +16,14 @@ function Landing(): ReactElement {
     const isAdmin = loggedIn ? user.permissions.admin : false;
     const isObserver = loggedIn ? user.role === 'observer' : false;
 
-    const moveToSurvey = () => {
-        const currentYear = new Date().getFullYear();
-        navigate(`/survey/response/${currentYear}/${activeNren}`);
+    const moveToSurvey =  () => {
+        const [activeSurveyYear, setActiveSurveyYear] = useState<string>()
+        useEffect(() => {
+            fetchActiveSurveyYear().then((year) => {
+                setActiveSurveyYear(year);
+            });
+        }, []);
+        navigate(`/survey/response/${activeSurveyYear}/${activeNren}`);
         return <></>
     }
 
diff --git a/survey-frontend/src/api/survey.ts b/survey-frontend/src/api/survey.ts
index 5f4eff5a2194154f5411405badb9114b1ec96111..d0762be27a138138daf20d5c78e0de2807defffa 100644
--- a/survey-frontend/src/api/survey.ts
+++ b/survey-frontend/src/api/survey.ts
@@ -9,4 +9,21 @@ export async function fetchSurveys(): Promise<Survey[]> {
         console.log('failed fetching survey list..');
         return [];
     }
-}
\ No newline at end of file
+}
+
+export async function fetchActiveSurveyYear(): Promise<string> {
+    try {
+        const response = await fetch('/api/survey/active/year');
+        const data = await response.json();
+        if ('year' in data) {
+            const year = data.year;
+            return year.toString(); 
+        } else {
+            console.log('Invalid response format: Failed fetching active survey year.');
+            return "";
+        }
+    } catch (error) {
+        console.error('Failed fetching active survey year:', error);
+        return "";
+    }
+}