This behavior is usually related to how the program indicator is configured, especially the combination of:
Aggregation type: Count
Analytics type: Enrollment
In this setup, the system counts enrollments across the full period, and when you display results by month, the same total is repeated instead of being distributed over time.
To correct this and get proper monthly values, you can follow this process:
Step-by-step solution:
Change Analytics Type
Switch from Enrollment → Event This ensures the indicator is calculated based on individual events (which have dates)
Review the Date for Aggregation
Use Event date as the time reference This allows proper monthly breakdown
Adjust the Aggregation Type (if needed)
Keep Count, but ensure it counts events (not enrollments)
Verify the Program Stage
Make sure the indicator is linked to the stage where WASH sensitization is recorded
Test in Data Visualizer
Select Monthly periods
Check if values are now distributed correctly across months
Why this happens:
With Enrollment analytics, DHIS2 aggregates data at enrollment level (not per event date), so the same total is reused for each period.
Switching to Event analytics allows the system to group data correctly by month.
If your use case requires enrollment-based logic, another option would be to refine the period boundary settings, but for monthly tracking, event-based analytics is generally the best approach.