diff --git a/opentech/apply/determinations/forms.py b/opentech/apply/determinations/forms.py
index f706486eeabccf24e4bae09f71fe2e06856ed85e..f8ae281c94948943ab0464fd55835fa8def009c2 100644
--- a/opentech/apply/determinations/forms.py
+++ b/opentech/apply/determinations/forms.py
@@ -363,6 +363,7 @@ class ConceptDeterminationForm(BaseConceptDeterminationForm, BaseNormalDetermina
                     help_text='Select the proposal form to use for proposal stage.',
                 )
                 self.fields['proposal_form'].group = 1
+                self.fields.move_to_end('proposal_form', last=False)
 
 
 class ProposalDeterminationForm(BaseProposalDeterminationForm, BaseNormalDeterminationForm):
diff --git a/opentech/apply/funds/models/submissions.py b/opentech/apply/funds/models/submissions.py
index 7087194a031ba4dcc6eb190610913a81314e46e2..a932968d7d56ff5702ee9d93ae21f62c8c4f98a2 100644
--- a/opentech/apply/funds/models/submissions.py
+++ b/opentech/apply/funds/models/submissions.py
@@ -515,7 +515,7 @@ class ApplicationSubmission(
         self.id = None
         proposal_form = kwargs.get('proposal_form')
         proposal_form = int(proposal_form) if proposal_form else 0
-        self.form_fields = self.get_from_parent('get_defined_fields')(target, proposal_form)
+        self.form_fields = self.get_from_parent('get_defined_fields')(target, form_index=proposal_form)
 
         self.live_revision = None
         self.draft_revision = None
diff --git a/opentech/apply/funds/models/utils.py b/opentech/apply/funds/models/utils.py
index 2d32775f005537adb6556d14ca10c484e44a797d..c5131399e0b82001dccd59200314786e91e029bc 100644
--- a/opentech/apply/funds/models/utils.py
+++ b/opentech/apply/funds/models/utils.py
@@ -83,12 +83,12 @@ class WorkflowStreamForm(WorkflowHelpers, AbstractStreamForm):  # type: ignore
     class Meta:
         abstract = True
 
-    def get_defined_fields(self, stage=None, proposal_form=0):
+    def get_defined_fields(self, stage=None, form_index=0):
         if not stage:
             stage_num = 1
         else:
             stage_num = self.workflow.stages.index(stage) + 1
-        return self.forms.filter(stage=stage_num)[proposal_form].fields
+        return self.forms.filter(stage=stage_num)[form_index].fields
 
     def render_landing_page(self, request, form_submission=None, *args, **kwargs):
         # We only reach this page after creation of a new submission