Form design with multiple project entry without endless columns?

I’m trying to create a form to allow teams to respond on the same contents (ie # of people worked with and details of sex and age and by activitiy buckets 1-4), with the main forks denoted by region and project number. Different regions have different project numbers and amounts of programs (1 region has 2, 1 region has 4).

The 2 thoughts I have are to 1: have each region submit for each project individually or 2. I have been drafting a form where each region + project response is it’s own set of columns but concerned that it will make a very large dataset and have issues when projects close and I just have columns that will no longer get updated.

Are there ways to acquire multiple rows of data (by region + project) per submission and to keep columns limited?
Here’s an image of the table I want at the end

Here’s a shot of the xlsform I’m drafting

Hi @vc_core,
This is not an ideal practice to develop any database. Database should always follow normalization process. Means that you have to try to reduce the number of column/variables but number of rows / record/data can be increased. If you create variable for each of the region/program, it will be very difficult if you need to include new region/program later when the form is already deployed for other regions.
Your first example is correct to create a database. As most of the information is similar. You can include the region, program, project in the dropdown menu/choice list and the rest of the data will be entered as usual. In this process, you can just update your list of choices and update the form and redeploy, as the rest of the variables will be unchanged. You should try the first one.