I have a fairly tight form floated in the field, where the form programming ensures that you cannot move forward until you answer previous questions. Still, I see a big number of submissions landing in the INCOMPLETE SUBMISSIONS on Aggregate dashboard. On close monitoring, I see that random questions are missing their answers in the submissions. It's hard to understand how these can be missed and questions later than these are filled, because the form does not move forward until you provide an answer.

One thing I can think of, is that people are trying to EDIT the form and messing up with the data after filling the form completely. Does ODK allow such forms to be submitted if the submission has some data missing for any compulsory question, even after EDIT?

What other reason can be there for so many INCOMPLETE SUBMISSIONS? Do heavy images put an affect on form transmission, if it is interrupted due to network connection or timeout? Any other things anyone can think of?


Hey @Saad,

There might be skip patters on your paper questionnaire which can be causing of missing values in those variables. This can be reason with missing values, however these values are not missing these are not relevant to them that's why you did not get any kind of data in those variables.


I know about skipping questions logic. This is not the problem. Something else is causing the issue.

It's difficult to tell what;s wrong not seeing the form so it would be good if you can share it.
You mean every question is required to answer?

1 Like

Hello @Saad,

If all skip logics are set as desired and the only feature you are relying on to prevent moving forward without answering previous questions is validate upon swipe, then you might also disable the prompt feature which allows enumerators to jump from one question to nth question without any limitations.

One last thing, for ODK to prevent users from saving incomplete forms it's required that you set all questions to true form of required this way even if prompt is enabled, upon save the form takes you to the very first required field that wasn't answered.

Hoping this helps you find a solution, Otherwise do share your form further investigation

Jules R

If you upload a submission, but fail to upload all media attachments, it places the submission in the incomplete submissions bucket. While it's incomplete, it won't be published to external servers or downloadable via ODK Briefcase. You can try sending previously-sent forms in Collect to retry those failed media submissions.

The issue with missing answers is likely something else. Without seeing the form, it's hard to know how that is happening.

How come the mobile client marks it as a complete submission without server's ack signal?

It's kind of a complex situation to teach to field worker about how to attempt a retry on the successfully SENT form, since they are not trained for it. Even this is new for me too, since I tried many times to break the signal and create an INCOMPLETE SUBMISSION, but was not successful. I come to know of this logic today.

It should not be possible to submit forms with values missing for required questions. However, relevance has higher priority. That is, if a question is not relevant, it doesn't matter what its required status is, it will always be excluded.

I believe that Aggregate receives the full submissions but for some reason doesn't end up committing all of it. This kind of thing seems to only happen when the server is under significant load and/or the submissions are very large. Is this the server that is overloaded and with the very large image submissions?

Hi @LN,

I will recheck the question sequence and possibility of missing data being logically correct or not. But yes, for sure the images are a valid reasoning. It is the same overloaded server (due to huge submission size for high-res images) that is causing all sorts of headaches to me these days, and has made me a small kind of crisis management expert :slight_smile:

I am thinking of writing a small note about what problems ODK projects can encounter if the server goes into overload for one reason or other, since this is what I am firefighting about these days. It has given me a significantly fair idea of what not to do in the form design and infrastructure planning for any ODK project that has the potential of scaling up.


That would be a great contribution, @Saad. I hope you are able to get everything running smoothly soon. The next huge project you are involved in will certainly benefit from your experience.

I have met such empty forms send to the server, most likely a missusage of the app...

But by the way, I have a form in which I have several select one question in a group as field list and a "grid" appearence using the "no-label" to allow quick selection of yes or no answer, each of them is set to required. and then another question of type "int" that is also set to required on the same screen and not relevant to the previous questions.

Through my tests I met a bug, it seems that if you answer "yes" or "no" very quickly and then swipe to next question, this allow to bypass the last "required" "int" question.

This also allow me to send the form to server and the last required question is not preventing from doing so... aren't the constraints recalculated at the end of the form as calculations ?

here's a screen rec :

it looks like I can go faster than the phone's processor is able to calculate the contraint :slight_smile: ...
If I fill it as one would normally do in real conditions, slowly, the constrain works on the last question and prevents to go further.

Note that I'm using fieldtask and did not try that on Collect, but I'm pretty sure this would be the same.
I guess the code is the same on that part...

here is the piece of form i've been using:

exemple.xlsx (10.8 KB)

Hi @xtra121
thanks for sharing your insights!

when (on the video) the bug is visible? On the first screen you have two required questions and you had to answer them then on the second one you have four and also had to answer them the last int question doesn't have a red asterisk so it's not required but in the form you attached it is so are you sure you didn't miss anything? Looks like those two forms differ.

thanks for pointing this... I notice I have two sequences of similar questions for organic and conventionnal farming ! the "required" field was missing on the one and not the other !

I feel stupid now :slight_smile:

thanks @Grzesiek2010 !

No worries! :slight_smile: