Targets (quarterly and annual targets for indicators)

Hi all,

We have different normal indicators to build. For each indicator we have quarterly and annual targets. In this case, how can we treat the targets in DHIS 2? Should we build: first, the normal indicator; second, the normal indicator divided by the quarterly target as the denominator and third, the normal indicator divided by the annual targe?

Looking forward to your help

Hi @ferdinandmussavene I think you’re approach sounds logical; a program indicator that counts the presence, and then you can use that program indicator to act as the numerator for an indicator who’s denominator can be a static number.

Data Visualizer selects the quarterly period that is relevant
Indicator X is pulled in
Indicator X would be made up of a Numerator (Program Indicator Y) and a Denominator (Static Number, Quarterly Target)
Program Indicator Y would be a count/sum and have a filter that determines if data meets requirements to count towards the goal

Yearly would have the Sam Program Indicator Y as above, but would have a different Denominator and would be put in a distinct Indicator, and then the visualization would need to be selecting the correct Yearly period.

For what its worth: Our instance started off in this way, but eventually moved to created another event model program specifically for our targets. We then added a single “Target” data element, and recorded a daily target for each relevant organisational unit. Even though our target covers a span of about 20-30 days for each instance, the program allowed us to do cumulative graphs that showed how we were doing in meeting the target after each day’s work. It also gave all flexibility needed for us, as organisational units had very different targets. Finally, because this makes the targets more dynamic, we only needed a single indicator for quarterly/annual/lifespan targets, being populated by two program indicators (one from each program–the numerator to get the goal met, and the denominator pulling and summing the daily targets).


Usually for aggregate data, you would want to create a separate data element for your target, which matches the disaggregation of your corresponding results data element. You would want to set the aggregation type to “Average (sum in orgunit hierarchy)” for your target, and “Sum” for your results data element.

When you create your acheivment indicator (Results/Targets) you would want to tick the “Annualized” check box in the indicator definition and set this to be a percent. Why?

Often targets are defined at a different frequency than results, like yearly, while results are often reported more frequently, like monthly. When you define the indicator in this way, a numerical factor will be applied to the target. So, if you report 100 for results in January, and have 1000 as a yearly target, you should get (100/(1000 * 31/365) * 100) = 117%. The numerical factor will be determined by the frequency at which you request the indicator data, and as you can see, the data for targets will be scaled to an average monthly target (which may not work if there is significant seasonal variation in your results data element).

Have a look at the “ANC 1 Coverage” indicator defined in the play instance (, which has been defined according to this pattern.


Hi @jason,

I have looked at the following indicator in the demo. The denominator is a data element (expected pregnancies) assigned to a dataset (population) that has yearly as periodicity

For our quarterly target, shall we need to create another data element with an average domain type and assign it to another dataset? For the indicator with annual target, we will tick annualized in the indicator building - if I understood your post well. What about the quarterly target indicator, shall we have to leave annualized unticked?


It depends a bit I think on your situation.

How do you collect your results data?

Do you have quarterly targets or annual targets?

Hi @jason,

We collect data monthly in a data set. We have predefined quarterly and annual targets. we will want to compared the value obtained from the indicator with the targets. This is to track the achievement for each indicator against its goal/target, so we would like to go to Pivot Tables and bring up the aggregate indicators (actuals) and targets.

I do not know if what I say is clear.

There is another point: our targets can change overtime


So do the quarterly targets differ from the annual ones? What I mean by this is, do the sum of the quarterly targets equal the annual target?

If they are equal, then I would just create an indicator based on the quarterly target, and when you choose an annual period, then the denominator will be the sum of the targets, while the numerator will be the sum of the results .

If you choose a monthly period, then your target denominator value will be approximately 1/3 of the quarterly total. So, I think unless the quarterly and annual targets do not add up to each other, then I would just skip them entirely.

Also, I would skip the quarterly targets if they are equally distributed over the year. That would decrease the amount of target data in your system, and should speed things up a bit.


Hi @jason,

Sorry for taking up your time.

Yes, the sum of the quarterly targets equal the annual target.

I think this will give us one value (percentage achieved).

But if we get 150 as aggregate indicator (numeric achievement) while the quarterly target is 300, how can we visualize these two values on the same visual? I do not know if I am being repetitive