diff --git a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx
index 1004cd8230..d1f394701e 100644
--- a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx
+++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/LogicEditor.tsx
@@ -239,18 +239,15 @@ export default function LogicEditor({
- {conditions[question.type].map(
- (condition) =>
- !(question.required && condition === "skipped") && (
-
- {logicConditions[condition].label}
-
- )
- )}
+ {conditions[question.type].map((condition) => (
+
+ {logicConditions[condition].label}
+
+ ))}
diff --git a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx
index 4a2186755f..e0095e6633 100644
--- a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx
+++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/edit/SurveyMenuBar.tsx
@@ -46,7 +46,7 @@ export default function SurveyMenuBar({
let faultyQuestions: String[] = [];
const existingLogicConditions = new Set();
-
+
useEffect(() => {
if (audiencePrompt && activeId === "settings") {
setAudiencePrompt(false);
@@ -119,6 +119,11 @@ export default function SurveyMenuBar({
for (const question of survey.questions) {
for (const logic of question.logic || []) {
+ if (question.required && logic.condition === "skipped") {
+ toast.error("User cannot skip a required question, please change the logic jump!");
+ return false;
+ }
+
const validFields = ["condition", "destination", "value"].filter(
(field) => logic[field] !== undefined
).length;