Search the knowledge base, browse our resources, and visit our forum for more detailed information
Last updated: 21 Mar 2026
Dynamic linking allows you to retrieve data from a parent project within child projects, simplifying the management of longitudinal data collection.
You can retrieve various non-media responses from a parent project and perform calculations on this linked data in a child project. This can be useful for retrieving baseline data, contact information, or health records in cohort studies, or for confirming or verifying previously collected data.
This article explains how to dynamically link data between KoboToolbox projects within the KoboToolbox Formbuilder.
Note: It can be easier to use XLSForm to set up dynamic data attachments. To learn more, see Dynamic data attachments in XLSForm.
Dynamically linking projects requires a parent project and at least one child project. The parent project requires no modification from a normal KoboToolbox form. However, setting up the child project(s) involves the following steps:
First, add an External XML question to your child form. This links the parent form to the child form. To do so:
Click the button.
Click + ADD QUESTION.
Choose the External XML question type.
Instead of the question label, provide a short name for the parent form. This name can consist of Latin alphabet characters, underscores, and numbers.

Then, throughout the form, you can retrieve values from the parent project using Calculate questions:
Click the button.
Click + ADD QUESTION.
Choose the Calculate question type.
Instead of the question label, include a calculation expression to retrieve the parent data (see table below).
After retrieving the parent data in a Calculate question, you can reference it elsewhere in your form, including in question labels, notes, or form logic, using the standard question referencing format.

To learn more about calculations in the Formbuilder, see Adding calculations in the Formbuilder.
In the question label field of the Calculate question where linked data will be retrieved, include one of the expressions in the table below. These expressions are called XPaths.
For each expression in the table below:
parent is the unique name assigned to the parent form (in the External XML question of the child form).
parent_question refers to the data column name of a question from the parent form.
child_question refers to the data column name of a question from the child form.
parent_index_question is the identifying question from the parent form that links it to the child form (e.g., unique ID, organization name).
child_index_question is the identifying question from the child form that links it to the parent form (e.g., unique ID, organization name).
parent_group refers to the data column name of the group in the parent form in which the parent_question is located.
parent_index_group refers to the data column name of the group in the parent form in which the parent_index_question is located.
XPath |
Description |
|---|---|
|
Returns the total number of rows in the parent project. |
|
Returns the total number of rows in the parent project where |
|
Returns the total count of instances where the value of |
|
Returns the value of |
|
Same as above, but specifies that only data from the first instance of |
|
Returns the sum of values from |
|
Returns the maximum value entered in |
|
Returns the minimum value entered in |
Note: If the parent question is not included in any group, omit parent_group/ from the expression.
Once your parent and child projects are set up and deployed in KoboToolbox, follow these steps:
Enable data sharing for the parent project:
In the SETTINGS > Connect Projects tab of the parent project, toggle the Data sharing switch (disabled by default) and click ACKNOWLEDGE AND CONTINUE in the confirmation window.
All data is shared by default, but you can restrict specific variables to share with child projects by clicking “Select specific questions to share”.
Note: If projects have different owners, the parent project owner must share the project with the child project owner. The minimum permissions required for dynamic data attachments to work are View form and View submissions. Note that this allows child project administrators to view all parent project data.
Connect the child project to the parent project:
In the SETTINGS > Connect Projects tab of the child project, click the “Select a different project to import data from.” A dropdown menu will allow you to select a parent project to link.
Rename the linked parent project to the External XML question label defined in the Formbuilder and click IMPORT.
You can then select specific questions from the parent project to share with the child project (recommended), or select all questions.
If you add new fields to the parent form and wish to use them in the child project, re-import the parent project in the child project settings.
Note: Forms can only be linked together if they are on the same KoboToolbox server.
It is possible for a parent and child project to be the same project. The steps are the same as those described above. Examples of use cases include:
Daily monitoring: If a form is used to survey the same person over time, you can link it to itself to count previous submissions. This can allow you to display a message (e.g., “monitoring is complete”) after a certain number of entries or to inform the enumerator of the number of forms submitted, as shown in the example below.

Registration form: By linking a registration form to itself, you can check whether a user has already been registered. This can allow you to generate an error message or add validation criteria if they are already registered, preventing duplicate registrations.
Data for dynamically linked projects can be collected using the KoboCollect Android app or Enketo web forms.
When collecting data, note the following:
The parent project must have at least one submission for the child project to function correctly.
When collecting data online, there is a five-minute delay in syncing new parent project data with the child project.
In offline mode, frequently download the child project to ensure data synchronization with the parent project.
You can configure the KoboCollect Android app to automatically update the parent project’s data when an internet connection is available:
Go to Settings > Form management > Blank form update mode
Select either Previously downloaded forms only or Exactly match server.
Set the automatic download frequency to occur every 15 minutes, every hour, every six hours, or every 24 hours. Note that enabling this setting may increase battery consumption.
Note: To learn how to set up dynamic data attachments in XLSForm and for additional troubleshooting support, see Dynamic data attachments in XLSForm.
Did you find what you were looking for? Was the information clear? Was anything missing?
Share your feedback to help us improve this article!
KoboToolbox is maintained by Kobo Inc.