DHS METHODOLOGICAL 

REPORTS 27

MULTILEVEL MODELING USING 

DHS SURVEYS: A FRAMEWORK TO 

APPROXIMATE LEVEL-WEIGHTS

AUGUST 2020

This publication was produced for review by the United States Agency for International Development. It was prepared by

Mahmoud Elkasabi, Ruilin Ren, and Thomas W. Pullum.

DHS Methodological Reports No. 27

Multilevel Modeling Using DHS Surveys:

A Framework to Approximate Level-Weights

Mahmoud Elkasabi

Ruilin Ren

Thomas W. Pullum

ICF

Rockville, Maryland, USA

August 2020

Corresponding author: Mahmoud Elkasabi, International Health and Development, ICF, 530 Gaither 

Road, Suite 500, Rockville, MD 20850, USA; telephone: +1 301-572-0950; fax: +1 301-572-0999; email: 

mahmoud.elkasabi@icf.com
Acknowledgments: The authors thank Brady West for very helpful comments on an earlier draft of this report. 

Editor: Diane Stoy

Document Production: Chris Gramer

This study was carried out with support provided by the United States Agency for International Development (USAID) 

through The DHS Program (#720-OAA-18C-00083). The views expressed are those of the authors and do not 

necessarily reflect the views of USAID or the United States Government.

The DHS Program assists countries worldwide in the collection and use of data to monitor and evaluate population, 

health, and nutrition programs. Additional information about The DHS Program can be obtained from ICF,

530 Gaither Road, Suite 500, Rockville, MD 20850 USA; telephone: +1 301-572-0200, fax: +1 301-572-0999, email: 

info@DHSprogram.com, internet: www.DHSprogram.com.

Recommended citation:

Mahmoud Elkasabi, Ruilin Ren, and Thomas W. Pullum. 2020. Multilevel Modeling Using DHS Surveys: 

A Framework to Approximate Level-Weights. DHS Methodological Reports No. 27. Rockville, Maryland, USA: ICF.
iii

CONTENTS

TABLES AND FIGURES.............................................................................................................................. v

PREFACE................................................................................................................................................... vii

ABSTRACT.................................................................................................................................................. ix

1 BACKGROUND.................................................................................................................. 1

2 SAMPLING DESIGN AND CONFIDENTIALITY................................................................ 3

2.1 Sampling design........................................................................................................ 3

2.2 Sampling parameters in DHS data files and final reports ......................................... 3

2.3 Confidentiality............................................................................................................ 4

3 WEIGHTING PROCEDURES IN DHS SURVEYS ............................................................. 5

3.1 Calculating the design weight ................................................................................... 5

3.2 Correction for non-response ..................................................................................... 6

3.3 Other DHS weights.................................................................................................... 8

4 LEVEL-1 AND LEVEL-2 WEIGHTS................................................................................... 9

4.1 Steps to calculate level-1 and level-2 weights .......................................................... 9

4.2 Steps to approximate level-1 and level-2 weights..................................................... 9

5 ILLUSTRATIONS ............................................................................................................. 13

5.1 Illustration 1: Approximate level-weights................................................................. 13

5.2 Illustration 2: Multilevel models using approximated level-weights......................... 16

6 DISCUSSION.................................................................................................................... 19

REFERENCES............................................................................................................................................ 21

APPENDIX A DERIVATIONS OF FORMULAS...................................................................................... 23

A.1 Level-weights from the household weight............................................................ 23

A.1.1 No non-response .................................................................................... 23

A.1.2 Including non-response........................................................................... 24

A.2 Level-weights from the individual weight ............................................................. 25

APPENDIX B STATA CODE................................................................................................................... 27

v

TABLES AND FIGURES

Table 1 Steps to calculate level-1 and level-2 weights from the DHS household survey 

weight (HV005) .......................................................................................................... 9

Table 2 Steps to approximate level-1 and level-2 weights from household or individual 

weights..................................................................................................................... 10

Table 3 Stages and steps to approximate level-1 and level-2 weights from the household 

weight with Stata code............................................................................................. 14

Table 4 Multilevel logistic regression modeling modern contraceptive use among married 

women using different level-weights........................................................................ 17

Figure 1 Level-weights for observation numbers 23–32 calculated with the equal-split 

approach (α = 0.5) ................................................................................................... 15

Figure 2 Boxplots for level-weights based on different values of α........................................ 16

vii

PREFACE

The Demographic and Health Surveys (DHS) Program is one of the principal sources of international data 

on fertility, family planning, maternal and child health, nutrition, mortality, environmental health, 

HIV/AIDS, malaria, and provision of health services. 

One of the objectives of The DHS Program is to continually assess and improve the methodology and

procedures used to carry out national-level surveys as well as to offer additional tools for analysis. 

Improvements in methods used will enhance the accuracy and depth of information collected by The DHS 

Program and be relied on by policymakers and program managers in low- and middle-income countries.

While data quality is a main topic of the DHS Methodological Reports series, the reports also examine 

issues of sampling, questionnaire comparability, survey procedures, and methodological approaches. The 

topics explored in this series are selected by The DHS Program in consultation with the U.S. Agency for 

International Development.

It is hoped that the DHS Methodological Reports will be useful to researchers, policymakers, and survey 

specialists, particularly those engaged in work in low- and middle-income countries, and will be used to 

enhance the quality and analysis of survey data.

Sunita Kishor

Director, The DHS Program

ix

ABSTRACT

This report responds to the demand from The Demographic and Health Surveys (DHS) Program data users 

for sampling weights that correspond to each stage of sampling in DHS surveys. Such weights, described 

as level-weights, are required for multilevel modeling with data from complex surveys that involve

multistage sampling, unequal sampling probabilities, and stratification. Like most survey datasets available 

for public use, level-weights are not included in DHS data because of concerns about disclosure risk. This 

report develops and illustrates a framework for estimating or approximating level-weights in DHS surveys.

The proposed framework requires data that is included in the publicly available DHS datasets and final 

reports. The same framework can be used to approximate level-weights for other household surveys, such 

as the Malaria Indicator Surveys (MIS) and the Multiple Indicator Cluster Surveys (MICS).

1

1 BACKGROUND

The DHS surveys typically employ two-stage sampling designs. Primary sampling units (PSUs) or clusters

are sampled in the first stage, and households in the second stage. A household respondent is interviewed 

first to obtain a household roster and information about the household as a unit. Eligible women and 

(usually) men are then interviewed. This design results in a multilevel dataset, with households, women, or 

men at level-1 and PSUs at level-2. 

Multilevel models have been applied extensively to DHS data to study the effects of cluster-level variables 

on individual-level outcomes. DHS data users have used multilevel modeling to explore the effects of 

community characteristics on contraceptive use, breastfeeding, the nutritional status for under-5 children, 

and many other topics (Kasaye et al. 2019; Ogbo et al. 2018; Simiat 2018).

Rabe-Hesketh and Skrondal (2006) and Carle (2009) have proposed a pseudo-maximum-likelihood (PML) 

estimation approach in the context of generalized linear mixed models (GLMM) that requires a sampling 

weight for each level (a PSU-level, or level-2, weight and a household-level, or level-1, weight) and not 

simply the final survey weight, which is essentially the product of the two level-weights. The final weights 

for households, women, and men are sufficient for most analytical purposes, but not for multilevel 

modeling.

A major practical obstacle in applying multilevel modeling with DHS datasets and many other surveys is 

that sampling weights that correspond to the levels of the two-stage sampling design are not provided in 

the DHS datasets. Providing the exact cluster-level weight creates a risk in which someone with access to 

the sampling frame could identify specific clusters, specific households, or specific individuals within the 

clusters. To avoid disclosing the identity of any survey participant or the location of any sample cluster, 

only final survey weights are released in the public use datasets.

This report will outline a framework to approximate the sampling weights for the different levels by using 

publicly available data in the DHS datasets or final reports. Section 2 will briefly describe the sampling 

design of standard DHS surveys, outline the sampling parameters and information provided in the DHS 

datasets and final reports, and discuss confidentiality concerns. Section 3 describes the current procedures 

for calculating weights. Section 4 develops the framework for approximating the sampling weights at

different design/data levels for DHS samples of households and women. Section 5 illustrates the framework

with the Zimbabwe DHS 2015. We close the report with a discussion in Section 6.

3

2 SAMPLING DESIGN AND CONFIDENTIALITY

2.1 Sampling design

Most DHS surveys follow a two-stage stratified sampling design, where PSUs, also referred to as clusters,

are selected in the first stage following a probability proportional to size (PPS) selection. In the second 

stage, residential households are selected with equal probability from an updated household listing of each 

selected PSU. The DHS samples are typically stratified by regions and urban/rural residence. In the first 

stage of sampling, PSUs are selected according to the allocation of the PSU sample over the sample strata. 

After the selection of the PSUs, a household listing operation is conducted in every selected PSU and a 

complete list of households is constructed. In the second stage, a fixed number of households is selected 

from each cluster. From the selected households, all women age 15–49 who slept in the household the night 

before the survey are eligible to complete a questionnaire designed for women. In addition, in all households 

or in a subsample, men of reproductive age (typically age 15–49, 15–54, or 15–59) are eligible to complete 

a questionnaire designed for men if a men’s questionnaire was included in the design.

In most DHS surveys, a recent population census frame with enumeration areas (EAs) is used as a sampling 

frame for the first-stage selection. The EAs are selected as PSUs or clusters. An EA is a geographical area

that serves as a counting unit for the population census, and is usually a city block in urban areas or a village

in rural areas with 200-300 households. The census frame includes information about each EA that includes

identification information and a measure of size (number of residential households enumerated in the last 

population census). Cartographic materials that delimit the location and boundaries of the EAs are also 

available.

2.2 Sampling parameters in DHS data files and final reports

The data collected in DHS surveys are made available for data users in many formats, such as SPSS, SAS, 

and Stata. In addition to the health and demographic data collected in interviews, some important sampling 

information is included in the final dataset. The standard sampling data included in the DHS recode data 

files include:

 Cluster (HV001/V001/MV001)

 Stratum (HV022/V022/MV022 or HV023/V023/MV023)

 Sampling weight (HV005/HV028/V005/D005/MV005/HIV05)

 Survey domain (HV024/V024/MV024 and HV025/V025/MV025)

Detailed information on the sample design is provided in the survey final report. The appendix of the survey

sampling design, typically Appendix A, provides summary tables from the sampling frame, the sample 

design, and the sample allocation. The sampling design appendix contains tables that describe:

 Distribution of residential households by region and type of residence (urban/rural) according to the 

census frame

 Distribution of EAs and their average size in the number of households, by region and type of residence,

according to the census frame
4

 Sample allocation of selected EAs and households by region and type of residence

2.3 Confidentiality

Confidentiality is a major concern because all data collected in DHS surveys are available to users. To 

protect survey participants’ identity and privacy, the released data should not allow for potential 

identification of any household or individual in the data file. In DHS surveys, strict rules are imposed at 

various steps during survey implementation to prevent the direct or indirect disclosure of the identity of 

individual respondents, their households, or clusters. Cluster ID codes are scrambled and geographic 

information system (GIS) information is geo-masked with displacement to prevent potential disclosure. All

information that could identify a cluster, household, or individual is omitted from the data file. This includes

the cluster’s selection probability. The sampling variables released in the data file are sufficient to describe 

the data structure and allow users to uniquely identify the clusters and households for data analysis, data 

management, or tabulation purposes, but are not sufficient to disclose the location or identity of any cluster, 

household, or individual.

The DHS final data files should identify the true sampling strata, which is important for the sampling error 

calculation in many statistical analyses. However, if a stratum is small and has only a few clusters selected,

confidentiality constraints may not permit inclusion of the true sampling stratum identifier. In such cases, 

a higher-level stratification identifier is included. This alternative should be close to the true stratification 

and not have a substantial effect on calculation of standard errors.

Since the final survey weights are sufficient for most data analysis purposes, DHS releases these weights 

but not the selection probabilities for the sampling units at different stages, the design weight (the inverse 

of the overall selection probabilities), the intermediate weights (design weights adjusted for non-response),

or any of the adjustment factors used to calculate the final survey weights. The omitted information could

potentially be used to identify a cluster or a household, especially by someone with access to the population 

census records. The final survey weights are not informative, in this sense, especially after correction for 

non-response and normalization.
5

3 WEIGHTING PROCEDURES IN DHS SURVEYS

To ensure that statistical estimates based on DHS data are valid, sampling weights should be used in the 

analysis. These weights compensate for different probabilities of selection within the samples, and different 

levels of non-response. By including the survey weights in the analysis, each interviewed unit becomes

representative of similar units in the target population. This section presents the different weights calculated 

for DHS surveys, and the steps for calculating each weight. We focus on the household weight and the 

woman’s weight because the other weights can be calculated with similar steps.

3.1 Calculating the design weight

The calculation of survey weights in DHS surveys begins with calculating the design weight, which

accounts for the selection probabilities of the sampling units at different sampling stages. The design 

weights are then adjusted for non-response at the levels of the cluster, household, or individual to calculate 

the final survey weights for households (HV005), women (V005), and men (MV005).

If the sample is selected with the standard two-stage stratified cluster sampling design described above, the 

calculation of design weights is based on the separate sampling probabilities for each stage. The sampling 

probabilities for the two stages are:

 P1hi: first-stage or cluster sampling probability of cluster i in stratum h

 P2hij: second-stage or household sampling probability for household j within cluster i in stratum h

Since the sample clusters are selected with probability proportional to size (PPS), the first-stage sampling 

probability P1hi can be calculated as:

P1hi =

ahMhi

Mh

(1)

where ah denotes the number of clusters selected in stratum h; Mhi denotes the measure of size of the cluster 

i used in the first stage selection (in a typical DHS survey, this is the number of households in the cluster 

based on the census frame); and Mh denotes the total measure of size in stratum h. If there is no clusterlevel non-response, the inverse of the first-stage sampling probability P1hi is the cluster weight (Level-2 

weight) and can be written as:

w2 = w2hi =

1

P1hi

(2)

In the second stage, a sample of households is selected with equal probability systematic sampling within

each cluster i, and the second-stage sampling probability P2hi for any household j can be calculated as:

P2hij =

shi

Lhi

(3)

where Lhi denotes the number of households listed in the household listing operation in cluster i in stratum 

h, and shi denotes the number of households selected in the same cluster. In cases where a large EA i was 
6

grouped into segments (clusters), and only one segment was PPS-selected and listed, P2hi should be 

calculated as follows:

P2hij = bhi

shi

Lhi

(4)

where bhi is the proportion of households in the selected segment compared to the total number of 

households in EA i. The household design weight is then calculated as the inverse of the overall selection 

probability (product of the two selection probabilities of the two stage) as follows:

dhij =

1

P1hiP2hij

(5)

The household design weight is a cluster-level weight in the sense that all interviewed households from the 

same cluster share the same weight.

3.2 Correction for non-response

One of the critical functions of survey weights is to adjust for unit non-response among the sampled units

if they could not be accessed/contacted or did not cooperate, and thus did not complete the survey. Such 

non-response might happen for sampled clusters, households, or individuals. Unfortunately, non-response 

in some or all of these levels is inevitable in almost all surveys. Therefore, the design weight calculated in 

the first step should be adjusted for non-response so that responding units represent all selected units. The 

purpose of the non-response adjustment is to inflate the design weights for the completed units to 

compensate for the non-completed units. Such inflation can be done with several methods. The DHS 

Program uses the Weighting Class Adjustment method, in which homogeneous response groups are formed, 

and a response rate is calculated within each group and used to inflate the design weight. Since sampling 

strata are created to be homogenous with respect to the survey variables, DHS uses the sampling strata as 

response groups. Within each sampling stratum, a weighted response rate is calculated, and the inverse of 

this rate is multiplied by the design weight to produce a survey weight that is adjusted for non-response 

within that stratum (Kott 2012).

The adjustment for non-response begins by adjusting for any non-response at the level of the sampling 

cluster. Let ah

c

be the number of clusters completed in stratum h. DHS surveys use a simple response rate 

to correct for cluster-level non-response:

RRh

CL = ahc⁄ah (6)

For the completed clusters, the non-response-adjusted design weight for cluster i in stratum h can be 

computed as:

dhi

CL = dhi RRh

CL ⁄ (7)
7

The adjusted design weight can then be adjusted for household non-response. Let Rj = 1 if household j was 

completed and Rj = 0 otherwise. Within each stratum h, the household weighted response rate is calculated 

as:

HH CL CL

h j j j

j h j h

RR R d d

 

 

(8)

where dj

CL is the adjusted design weight of household j as calculated in (7). For the completed households

in cluster i, the non-response-adjusted household weight is computed as:

dhi

HH = dhiCL RRh

HH ⁄ (9)

This weight can be used as a survey weight for completed households, where the conditional Level-1 weight 

that accounts for the selection and non-response of households is calculated as:

w1|2

HH = w1hiHH =

dhij

HH

w2hi

(10)

where w2hi is the level-2 weight defined in (2).

However, according to the DHS standard approach, a normalized version of dhij

HH is released instead. The 

normalized weight is calculated by multiplying the sampling weight by a constant at the national level. This 

constant, or the normalization factor, is the estimated household-level total sampling fraction, or the total 

number of completed households divided by the total weighted number of completed households, or the 

summation of the weights over all completed households. Therefore, the household survey weight (HV005) 

for all households in cluster i can be calculated as:

005

c

HH

hi hi HH

j

h j h

m

HV d

d





 

(11)

where mc is the total number of completed households in the survey and dj

HH is the cluster-level nonresponse-adjusted household weight dhi

HHdefined in (9).

To calculate the individual weight for a woman age 15-49, the denormalized household weight dhi

HH should 

be adjusted for individual-level non-response. Let Rk = 1 if individual k completed the survey, and Rk = 0 

otherwise. Within each stratum h, the individual weighted response rate is calculated as:

WM HH HH

h k k k

k h k h

RR R d d

 

 

(12)

where dk

HH is the adjusted design weight of individual k as calculated in (9). For the responding individuals

in cluster i, the non-response-adjusted design weight is computed as:

dhi

WM = dhiHH RRh

WM ⁄ (13)
8

The normalized version of the woman weight (V005) for all women in cluster i can then be calculated as:

005

c

WM

hi hi WM

k

h k h

n

V d

d





 

(14)

where n

c

is the total number of completed interviews with women age 15-49 in the survey, and 

WM

k d

is the 

cluster-level non-response-adjusted design weight

WM

hi d

defined in (13). Note that the de-normalized weight 

dhi

WM can be used to calculate the conditional Level-1 weight that accounts for the selection and nonresponse of households and non-response of individuals:

w1|2

WM = w1hi

WM =

dhi

WM

w2hi

(15)

3.3 Other DHS weights

The survey weights for households selected for the men’s survey and for men can be calculated with the 

same approach described above. If men are only interviewed in a subsample of households, the overall 

selection probability must be adjusted to account for the subsample selection.

There are other special weights for the domestic violence module (D005) and HIV testing module (HIV05). 

In the domestic violence module, only one eligible woman is randomly selected from each sampled 

household to complete the domestic violence questionnaire. To account for the within-household selection 

and for the non-response for the module, the design weight must be adjusted to take into consideration the 

within-household selection probability and the response rates for the domestic violence module. For the 

HIV weight, the design weight must be adjusted for non-response for the HIV test. The sampling weights 

for HIV testing are calculated separately for women and men, but follow the same methodology. The 

standard weight for HIV testing is normalized for women and men together. More details about the 

calculation of weights for domestic violence and HIV can be found in the DHS Sampling and Household 

Listing Manual (ICF International 2012).
9

4 LEVEL-1 AND LEVEL-2 WEIGHTS

4.1 Steps to calculate level-1 and level-2 weights

If all information described in Section 3 is available, the calculation of separate level-1 and level-2 weights 

is straightforward. Table 1 describes the calculation of separate weights for households (as level-1) and 

clusters (as level-2) using the survey weight HV005 and a minimal amount of additional information about 

cluster i in stratum h. The same steps can be used to calculate the separate weights for women (as level-1) 

and clusters (as level-2) using V005 and minimal additional information.

Table 1 Steps to calculate level-1 and level-2 weights from the DHS household survey weight (HV005)

Steps Formula Requirements

Accessible/

Available Where

1. De-normalize the final 

survey weight

005

HH

j

HH h j h

hi hi c

d

d HV

m







HV005hi Yes Public-use datasets

HH

j

h j h

d





No

mc Yes Public-use datasets

2. Calculate the level-2 

weight w2hi

HH =

1

P1hi

=

Mh

ahMhi

ah Yes Appendix A

Mh Yes Appendix A

Mhi No

3. Calculate the level-1 

weight w1hi

HH = 

dhi

HH

w2hi

dhi

HH Yes Step 1

w2hi

HH Yes Step 2

Unfortunately, as indicated in Table 1, some required information is not available through the DHS public 

use data/materials, such as the cluster measure of size Mhi and the estimated total number of households,

HH

j

h j h

d



 , for the household weight (HV005), or the estimated total number of women 15-49,

WM

k

h k h

d



 , for the woman weight (V005).

4.2 Steps to approximate level-1 and level-2 weights

This section presents steps to approximate level-1 and level-2 weights from the final survey weights with 

information available from DHS. We approximate the level-weights from the household weight (HV005) 

and the woman weight (V005) by following the steps outlined in Table 1. To execute the approximation, 

the following inputs are required:

1. The household weight (HV005) from the household recode (HR) dataset, or the woman weight (V005) 

from the woman recode (IR) dataset.

2. The total number of completed/interviewed clusters ah

c

(clusters with at least one interviewed 

household) in stratum h for all strata. In surveys where all selected clusters were interviewed, the 

number of selected clusters ah can be used. In a typical DHS survey, ah for all strata can be found in 

Table A.3 in Appendix A on the sampling design. The number of interviewed clusters ah

c

should be 

calculated from the household (HR) dataset or the woman (IR) dataset.
10

3. The total number of households Mh in stratum h for all strata. In a typical DHS survey, this can be found 

in Table A.1 in Appendix A on the sampling design.

4. The total number of households M in the entire country according to the census. In a typical DHS 

survey, this can be found in Table A.1 in Appendix A on the sampling design.

5. The total number of households Mhi in cluster i for each cluster. These numbers are not available in the 

datasets or the final report. However, these numbers can be approximated with the average number of 

households per cluster within sampling strata according to the census data M̅h. In a typical DHS survey, 

this can be found in Table A.2 in Appendix A on the sampling design.

6. The total number of households that completed the survey, m

c

, or the total number of interviewed 

women, n

c

.

7. The projected number of households, M̂ , in the entire country at the time of the survey, or the projected 

number of women age 15-49, N̂ , in the entire country at the time of the survey. These projected 

numbers may be accessible through sources such as the country’s statistical office, the United Nations 

Population Division’s (UNPD) World Population Prospects, or the United Nations Population Fund 

(UNFPA).

An approximation can be executed with the three steps outlined in Table 2. More details about how the 

equations in Table 2 were derived is provided in Appendix A of this report.

Table 2 Steps to approximate level-1 and level-2 weights from household or individual weights

Steps Household weight Individual weight

1. De-normalize the final weight, using 

approximated normalization factor

005 HH

hi hi c

Mˆ

d HV

m

 005 WM

hi hi c

Nˆ

d V

n



2. Approximate the level-2 weight

w2

HH = w2hi =

Ah

ah

c f

α

,

f = dhi

HH (

Ah

ah

c ×

M̅h

sh

⁄ )

and 0 ≤ α ≤ 1

w2

WM = w2hi =

Ah

ah

c f

α

,

f = dhi

WM (

Ah

ah

c ×

M̅h

sh

⁄ )

and 0 ≤ α ≤ 1

3. Approximate the level-1 weight w1|2

HH = w1hi =

dhi

HH

w2hi

w1|2

WM = w1hi =

dhi

WM

w2hi

The variation factor f in the second step contributes with different degrees to w2 and w1|2, depending on 

the specification of the exponent α, 0 ≤ α ≤ 1. The factor is fully assigned to w2 when α = 1, and fully 

assigned to w1⁄2 when α = 0. The variation factor is equally assigned to the two weights when α = 0.5. 

When the extreme values are used, all the weight variation is attributed to one of the two level-weights, the 

level-1 or level-2 weight. If all variation is assigned to w2 , with α = 1, then w1⁄2 has a constant value M̅h

sh

within each sampling stratum h. At the other extreme, if all variation is assigned to w1⁄2 with α = 0, then

w2 is assigned a constant value Ah

ah

c

 within each sampling stratum h. Given the DHS sampling design 

described earlier, extreme values for α, such as 0 and 1, should be avoided. The easiest option is the equal 

split, 

  05.

. The user may explore different values of α and evaluate the results to judge if cluster-level 
11

variations or household-level variations have the most influence on the model and then decide an 

appropriate α (Stata code for this sensitivity analysis is provided in Table 3).

The de-normalization step restores the original scale of the survey weight but is not meant to produce 

accurate population counts. De-normalization can also be done approximately, based only on information 

available within the survey data and Appendix A of the final report. An approximate sampling fraction can 

be used to de-normalize the household weight or the woman individual weight. The de-normalized weights 

in the first step of Table 2 can be approximated as:

dhi

HH = HV005hi ×

M

mc

(16)

dhi

WM = V005hi ×

M

mc

(17)

where 

M

is the total number of households in the country provided in the tables in Appendix A.

13

5 ILLUSTRATIONS

This section presents two illustrations. Illustration 1 is an example of how the level-weights can be 

approximated from the household weight. Illustration 2 shows how the level-weights can be used in a 

multilevel model of modern contraception use among married women age 15-49. Data from the Zimbabwe 

DHS 2015 (ZDHS 2015) are used for both illustrations.

5.1 Illustration 1: Approximate level-weights

The estimation of level-1 and level-2 weights based on the household weight (HV005) from the household 

(HR) standard recode file of the ZDHS 2015 follows three steps:

1. Data needed for calculations are extracted from the HR dataset and from Appendix A of the final report 

(Zimbabwe National Statistics Agency and ICF International 2016).

2. Level-weights are calculated with the equal split approach.

3. A sensitivity analysis is conducted where level-weights are recalculated based on different values of α.

Table 3 presents the three stages in more detail and with Stata code. Figure 1 gives a partial listing, for 

observations 23–32, of the DHS household weight, the variation factor, and the equal-split level-weights.
14

Table 3 Stages and steps to approximate level-1 and level-2 weights from the household weight with 

Stata code

Stages Steps Stata code Stage 1

Compile inputs for level-weights calculations

1. Calculate the total number of completed clusters ah

c

in 

stratum h for all strata.

2. Add the total number of census clusters Ahin stratum 

h for all strata. The numbers can be found in Table A.3 

in the final report of the ZDHS 2015.

3. Add the average number of households per cluster by 

sampling strata according to the census data M̅h. The 

numbers can be found in Table A.3 in the final report.

4. Calculate the total number of completed households 

mc.

5. Add the total number of households according to the 

census frame. This number can be found in Table A.2 

in the final report.

6. Add the number of households selected per cluster. 

This number can be found in the in the text of Appendix 

A of the final report.

7. Prepare the DHS household weight.

use "ZWHR72FL.DTA", clear

*** 1 ***************************

gen a_c_h=.

quietly levelsof hv022, local(lstrata)

quietly foreach ls of local lstrata {

tab hv021 if hv022==`ls', matrow(T)

scalar stemp=rowsof(T)

replace a_c_h=stemp if hv022==`ls'

}

*** 2 ***************************

gen A_h = 0

replace A_h = 673 if hv022 == 1

...

replace A_h = 1682 if hv022 == 19

*** 3 ***************************

gen M_h = 0

replace M_h = 108 if hv022 == 1

...

replace M_h = 98 if hv022 == 19

*** 4 ***************************

quietly summarize hv001

gen m_c=r(N)

*** 5 ***************************

gen M = 2976119

*** 6 ***************************

gen S_h = 28

*** 7 ***************************

gen DHSwt = hv005 / 1000000

Stage 2

Approximate level-1 and level-2 weights

1. De-normalize the final weight, using approximated 

normalization factor.

2. Approximate the level-2 weight based on equal split 

method (α=0.5).

3. Approximate the level-1 weight.

*** 1 ***************************

gen d_HH = DHSwt * (M/m_c)

*** 2 ***************************

gen f = d_HH / ((A_h/a_c_h) * (M_h/S_h))

scalar alpha = 0.5

gen wt2 = (A_h/a_c_h)*(f^alpha)

*** 3 ***************************

gen wt1 = d_HH/wt2

Stage 3

Sensitivity analysis

Calculate level-weights based on the following 7 scenarios 

of α: 0, 0.1, .25, .50, .75, 0.90 and 1. 

local alphas 0 0.1 .25 .50 .75 0.90 1

local i = 1

foreach dom of local alphas{

gen w2_`i' = (A_h/a_c_h)*(f^`dom')

gen w1_`i' = d_HH/w2_`i'

local ++i

}
15

Figure 1 Level-weights for observation numbers 23–32 calculated with the equal-split approach

(α = 0.5)

As indicated in Figure 2, the equal split (α=0.50) seems like a good choice for the allocation of variation in 

weights to the level-1 and level-2 units, at least in this example. Figure 2 shows boxplots that describe the 

dispersion in the level-2 weights in the upper panel of the figure and the dispersion of the level-1 weights 

in the lower panel, for each of the seven scenarios. In general, high dispersion in weights is undesirable and 

inefficient because the results depend much more on the units with high weights than the units with low 

weights. As described earlier, α=0 allocates all the variation to the level-1 weight and α=1 allocates all of 

the variation to the level-2 weight. If all the variation is allocated to the level-1 weight, that is, to households 

or women, then the results will depend much more on the level-1 cases (households or women) with high 

weights. If all the variation is allocated to the level-2 weight, that is, to clusters, then the results will depend 

much more on the level-2 cases (clusters) with high weights.

Efficiency is a criterion in the design of DHS surveys. The value of α that comes closest to replicating the 

true design of the survey will generally be the one that simultaneously minimizes both the dispersion of the 

level-1 and level-2 weights. The boxplots in Figure 2 suggest that the optimal design is best approximated 

with the middle value, α=0.50.

32. 2 6 1.440993 407.1166 1.164747 104.5778 3.892953

31. 2 4 1.440993 407.1166 1.164747 104.5778 3.892953

30. 2 3 1.440993 407.1166 1.164747 104.5778 3.892953

29. 2 2 1.440993 407.1166 1.164747 104.5778 3.892953

28. 2 1 1.440993 407.1166 1.164747 104.5778 3.892953

27. 1 29 1.807388 510.6324 1.488201 119.5941 4.269714

26. 1 28 1.807388 510.6324 1.488201 119.5941 4.269714

25. 1 27 1.807388 510.6324 1.488201 119.5941 4.269714

24. 1 26 1.807388 510.6324 1.488201 119.5941 4.269714

23. 1 25 1.807388 510.6324 1.488201 119.5941 4.269714

hhid DHSwt d_HH f wt2 wt1
16

Figure 2 Boxplots for level-weights based on different values of α

5.2 Illustration 2: Multilevel models using approximated level-weights

In this illustration, the use of modern contraceptive methods is modeled based on data from the ZDHS 2015. 

We fitted several mixed-effects logit regression models on 5,149 married women (age 15-49) nested within 

400 clusters. All models share the same specifications, except the level-weights, with the binary variable 

cumodern as the outcome variable, with a value of 1 that indicates modern contraceptive use and 0 

otherwise. The model covariates include age in years (age), education (secondary: 0 = primary or less; 1 = 

secondary or more), place of residence (urban: 0 = rural; 1 = urban), and number of children (children: 0 = 

no children; 1 = 1 child; 2 = 2 children; 3 = 3 children; 4 = 4 or more children). Consider a two-level 

random-intercept model to model πij = Pr(cumodernij = 1) for woman i in cluster j, where random 

effects are modeled for each sampling cluster as follows:

logit(πij) = β0 + β1ageij + β2secondaryij + β3urbanij + β41. childrenij

+ β52. childrenij + β63. childrenij + β74. childrenij + uj

for j = 1, ..., 400 clusters, with i = 1, ...., nj women in cluster j, where uj ~ N(0, σ

2

).

The regression models were fitted with the svy: melogit command in Stata-16 (StataCorp 2019). All Stata 

code can be found in Appendix B, including code to calculate level-weights based on the woman weight 

(V005). We fitted seven models with level-weights calculated with the following values of α: 0, 0.1, 0.25, 

0.50, 0.75, 0.90 and 1. An eighth model was fitted with the level-1 weight declared as 1 (a common practice
17

used when level-weights are not available). Since results from models 1 to 7 are very similar, we present 

results from models 1, 4, 7 and 8 in Table 4.

Table 4 Multilevel logistic regression modeling modern contraceptive use among married women using 

different level-weights

Model 1 (α = 0)

Coef. (Std. Err.) 

Model 4 (α = 0.50)

Coef. (Std. Err.)

Model 7 (α = 1)

Coef. (Std. Err.)

Model 8 (w1|2 = 1)

Coef. (Std. Err.)

Age -0.08***(0.01) -0.08***(0.01) -0.08***(0.01) -0.07***(0.01)

Education

Primary or less (ref)

Secondary 0.46***(0.11) 0.47***(0.11) 0.47***(0.11) 0.50***(0.11)

Place of residence

Rural (ref)

Urban 0.47***(0.13) 0.46***(0.13) 0.45***(0.13) 0.38***(0.11)

Number of children

0 children (ref)

1 child 3.92***(0.34) 3.92***(0.34) 3.92***(0.34) 3.60***(0.30)

2 children 4.86***(0.35) 4.86***(0.35) 4.85***(0.35) 4.48***(0.31)

3 children 5.04***(0.38) 5.03***(0.38) 5.03***(0.38) 4.64***(0.34)

4 children or more 5.36***(0.38) 5.35***(0.38) 5.35***(0.38) 4.91***(0.34)

Intercept -1.47***(0.35) -1.48***(0.35) -1.48***(0.34) -1.45***(0.31)

Random effects

Estimate intercept variance 

(standard error) 0.84 (0.10) 0.82 (0.10) 0.79 (0.10) 0.32 (0.10)

*** p-value =<0.001

In Table 4, the estimated coefficients and their standard errors are very similar for all values of α in the full 

range of 0 to 1. However, in general, the coefficients in Model 8 are attenuated (closer to 0) and their 

standard errors are smaller. As shown in the bottom row of Table 4, when using level-weights, the estimated 

variance of the intercept at level-2 ranges between 0.79 and 0.84, which is more than twice the variance of

0.32 that is estimated when the level-1 weight is declared as 1 in Model 8. This observation suggests that 

the variation between clusters in the use of modern contraception is underestimated if level-weights are not 

used.

19

6 DISCUSSION

In this report we proposed a framework to approximate level-weights for multilevel models. We proposed 

an approximation method that uses the available data and information provided by the DHS Program in the 

survey datasets and final reports. The approximation method includes a powered variation factor that 

contributes to slicing or allocating the final survey weight between level-1 and level-2 weights. The 

proposed approximation approach is valid for other household surveys, such as the Malaria Indicator Survey 

(MIS) and the Multiple Indicator Cluster Survey (MICS), if the inputs for the method are available as with

DHS surveys.

We also used a specific DHS survey, conducted in Zimbabwe in 2015, to illustrate how level-weights can 

be calculated from the household weight or the woman weight in the data files, and then illustrated how 

those level-weights can be used when fitting multilevel models. Stata code is provided for these

illustrations. We compared different models in which the proposed approximation method is used or not

used. According to the results of the comparisons, omitting level-weights may lead to underestimating the 

variation between level-2 units.

21

REFERENCES

Carle, A. C. 2009. “Fitting Multilevel Models in Complex Survey Data with Design Weights: 

Recommendations.” BMC Medical Research Methodology 9 (1): 49. https://doi.org/10.1186/1471-2288-

9-49.

ICF International. 2012. Sampling and Household Listing Manual. MEASURE DHS. Calverton, 

Maryland, USA: ICF International.

https://dhsprogram.com/pubs/pdf/DHSM4/DHS6_Sampling_Manual_Sept2012_DHSM4.pdf.

Kasaye H. K., F. T. Bobo, M. T. Yilma, and M. Woldie. 2019. “Poor Nutrition for Under-five Children 

from Poor Households in Ethiopia: Evidence from 2016 Demographic and Health Survey.” PLoS ONE 14 

(12): e0225996. https://doi.org/10.1371/journal.pone.0225996.

Kott, P. S. 2012. “Why One Should Incorporate the Design Weights when Adjusting for Unit 

Nonresponse Using Response Homogeneity Groups.” Survey Methodology 38 (1): 95-99.

http://www.statcan.gc.ca/pub/12-001-x/2012001/article/11689-eng.pdf.

Ogbo, F. A., A. Page, J. Idoko, and K. Agho. 2018. “Population Attributable Risk of Key Modifiable Risk 

Factors Associated with Non-exclusive Breastfeeding in Nigeria.” BMC Public Health 18 (1): 247. 

https://doi.org/10.1186/s12889-018-5145-y.

Rabe-Hesketh, S., and A. Skrondal. 2006. “Multilevel Modelling of Complex Survey Data.” Journal of 

the Royal Statistical Society: Series A (Statistics in Society) 169 (4): 805-827.

http://www.gllamm.org/JRSSAsurvey_06.pdf.

Simiat, A. O. 2018. “Community and Individual Level Factors Influencing Modern Contraceptive Use 

among Married Women in Nigeria.” Health Sciences Research 5 (3): 59-68.

StataCorp. 2019. Stata: Release 16. Statistical Software. College Station, TX, USA: StataCorp LLC.

https://www.stata.com/company/.

Zimbabwe National Statistics Agency and ICF International. 2016. Zimbabwe Demographic and Health 

Survey 2015: Final Report. Rockville, MD, USA: Zimbabwe National Statistics Agency (ZIMSTAT) and 

ICF International. https://dhsprogram.com/pubs/pdf/FR322/FR322.pdf.

23

APPENDIX A DERIVATIONS OF FORMULAS

A.1 Level-weights from the household weight

This appendix gives the derivations of the equations to approximate the level-weights based on the 

household weight. We first assume there is no non-response at the cluster level or among households. In 

the next section, the derivations will be extended to allow for non-response in the different sampling levels.

A.1.1 No non-response

Assuming full response among all sampling units, including sampling clusters and households, the design 

weight in (5) can be used as a survey weight. As illustrated earlier, with the multistage stratified cluster 

sampling design used in the DHS surveys, the household design weight can be written as:

h hi h h hi

hi

h h h h hi hi

M L A M L d

a s a s M M

 

(A.1)

where Ah denotes the total number of clusters in stratum h according to the census frame. If the number of 

households listed is exactly the number of census households in all clusters, that is, Lhi

 M hi

, then the 

DHS samples are self-weighting at the stratum level since the household design weight is a constant across 

the sampling stratum. Then the last term in equation (A.1) is equal to one and the household design weight 

converges to:

h h

hi

h h

A M d

a s



(A.2)

Mh

and 

Ah

are known and are given in Appendix A of the DHS final reports, as are 

h a

(number of selected 

clusters from stratum h) and 

h

s

(number of selected households per cluster). The first term in the equation 

(A.2) is the main part of the level-2 weight, which would be the exact level-2 weight if clusters were selected 

with equal probability selection instead of PPS sampling. The second term in the equation (A.2) is the main 

part of the level-1 weight if the average number of households listed per cluster is close to the average 

cluster size of the stratum. In practice, this ideal situation never happens. The cluster size varies and the 

number of households listed is different from the census number. Using the main part of the level weights, 

the true level-2 and level-1 design weights can be written as the constant main part multiplied by a variation 

factor:

2 2 2

HH h h

hi hi

h h hi

M A w w f

a a M

   , 

2

h

hi

hi

M f

M



(A.3)

12 1 1

HH hi h

| hi hi

h h

L M w w f

s s

   , 

1

hi

hi

h

L

f

M



(A.4)
24

The average variation of the level-2 weight comes from the variation of the cluster size compared to the 

average cluster size by stratum, whereas the average variation of the level-1 weight comes from the 

variation of the number of listed households compared to the average cluster size. The overall variation 

factor of the household design weight 

hi f

is the product of the two factors as follows:

2 1

hi

hi hi hi

hi

L

f f f

M

 

(A.5)

The variation factors 

2hi f

and 

1hi f

are unknown since the denominator of 

2hi f

and the numerator of 

1hi f

are 

unknown. However, their product, the overall variation factor 

hi f , is known and, from equation (A.1), can 

be calculated as:

h h

hi hi

h h

A M f d /

a s

 

    

(A.6)

The overall variation factor can then be equally shared between the level-2 weight and level-1 weight as 

follows:

2 1 hi hi hi f f f  

(A.7)

The equal variation split is a special case of a more general power split, where the overall variation factor 

is allocated to the level-2 weight and level-1 weight based on an exponent or power value 

  , 0 1  

, as 

follows:

2hi hi f f 



(A.8)

1

1hi hi f f 



(A.9)

Therefore, the approximated level-2 and level-1 weights are given by:

2 2

HH h

hi hi

h

A

w w f

a 



 

(A.10)

12 1

2

HH hi

| hi

hi

d

w w

w

 

(A.11)

A.1.2 Including non-response

We now derive the level-weights from the household weight allowing for non-response among clusters and 

households. Again, the final weight is normalized. Correcting for cluster-level non-response is equivalent 

to recalculating the first-degree selection probability based on the number of clusters interviewed ah

c

as 

P1hi = ah

c Mhi⁄Mh. The correction will be explicit in the equation of the level-2 weight, where the number 

of selected clusters ah is replaced by the number of interviewed clusters ah

c

. The correction for household-
25

level non-response is absorbed into the overall variation factor fhi. Since the final household weight is 

normalized, a denormalized version of the weight must be used to derive the level-1 weight. The final 

approximated level-2 and level-1 weights given in (A.10 and A.11) are:

2 2

HH h

hi hi c

h

A

w w f

a 



 

(A.12)

12 1

2

HH

HH hi

| hi

hi

d

w w

w

 

(A.13)

where 

HH h h

hi hi c

h h

A M f d /

a s

 

    

 , 0 1    and 

HH

hi d

 is the denormalized version of the household weight 

HV005.

A.2 Level-weights from the individual weight

This section describes the calculation of level-weights from an individual weight, specifically the woman 

weight, allowing for non-response in different sampling stages and using a final normalized weight. Since 

there is no woman selection within household (all women age 15-49 in the household are eligible for the 

individual interview), the main part of the level-1 and level-2 weights for women are the same as for the 

household. The only difference is a correction for individual non-response at the stratum level. The 

correction factor can be absorbed into the overall variation factor. Equations (A.12) and (A.13) can be used 

directly to approximate the level-1 and level-2 weights based on the de-normalized individual weight as 

follows:

2 2

WM h

hi hi c

h

A

w w f

a 



 

(A.14)

12 1

2

WM

WM hi

| hi

hi

d

w w

w

 

(A.15)

where 

WM h h

hi hi c

h h

A M f d /

a s

 

    

and 

WM

hi d

is the de-normalized version of the woman weight V005.

27

APPENDIX B STATA CODE

use "ZWIR72FL.DTA", clear

* keep currently married women

keep if v501==1

* drop currently pregnant and declared infecund

drop if v213==1 | v605==7

* recode model variables

recode v313 (0/2 = 0 "traditional or not using") (3 = 1 "modern use"), gen(cumodern)

gen age=v012

recode v106 (0/1=0 "noedu/primary") (2/3=1 "secondary+") (8/9=.), gen(secondary)

recode v025 (2=0 "rural") (1=1 "urban"), gen(urban)

recode v218 (0=0 "0 children") (1=1 "1 children") (2=2 "2 children") (3=3 "3 

children") (4/12=4 "4 children or more"), gen(children)

**********************************************************************

* Stage A *** Compile parameters/inputs for Level-weights calculations 

**********************************************************************

* a_c_h completed clusters by strata

gen a_c_h=.

quietly levelsof v022, local(lstrata)

quietly foreach ls of local lstrata {

tab v021 if v022==`ls', matrow(T)

scalar stemp=rowsof(T)

replace a_c_h=stemp if v022==`ls'

}

* A_h total number of census clusters by strata

gen A_h = 0

replace A_h = 673 if v022 == 1

replace A_h = 3340 if v022 == 2

replace A_h = 162 if v022 == 3

replace A_h = 2451 if v022 == 4

replace A_h = 463 if v022 == 5

replace A_h = 2843 if v022 == 6

replace A_h = 839 if v022 == 7

replace A_h = 2298 if v022 == 8

replace A_h = 165 if v022 == 9

replace A_h = 1343 if v022 == 10

replace A_h = 218 if v022 == 11

replace A_h = 1280 if v022 == 12

replace A_h = 981 if v022 == 13

replace A_h = 2230 if v022 == 14

replace A_h = 372 if v022 == 15

replace A_h = 2907 if v022 == 16

replace A_h = 4920 if v022 == 17
28

replace A_h = 198 if v022 == 18

replace A_h = 1682 if v022 == 19

* M_h average number of households per cluster by strata

gen M_h = 0

replace M_h = 108 if v022 == 1

replace M_h = 102 if v022 == 2

replace M_h = 98 if v022 == 3

replace M_h = 100 if v022 == 4

replace M_h = 99 if v022 == 5

replace M_h = 98 if v022 == 6

replace M_h = 101 if v022 == 7

replace M_h = 100 if v022 == 8

replace M_h = 113 if v022 == 9

replace M_h = 106 if v022 == 10

replace M_h = 97 if v022 == 11

replace M_h = 99 if v022 == 12

replace M_h = 99 if v022 == 13

replace M_h = 99 if v022 == 14

replace M_h = 100 if v022 == 15

replace M_h = 101 if v022 == 16

replace M_h = 104 if v022 == 17

replace M_h = 144 if v022 == 18

replace M_h = 98 if v022 == 19

* m_c total number of completed households (added from the HR dataset)

gen m_c= 10534

* M total number of households in country

gen M = 2976119

* S_h households selected per stratum

gen S_h = 28

gen DHSwt = v005 / 1000000

**********************************************************************

* Stage B *** Approximate Level-weights ***

**********************************************************************

* Steps to approximate Level-1 and Level-2 weights from Household or Individual 

Weights

*Step 1. De-normalize the final weight, using approximated normalization factor 

gen d_HH = DHSwt * (M/m_c)

*Step 2. Approximate the Level-2 weight

* f the variation factor

gen f = d_HH / ((A_h/a_c_h) * (M_h/S_h))

* Calculating the level-weights based on different values of alpha

local alphas 0 0.1 .25 .50 .75 0.90 1

local i = 1
29

foreach dom of local alphas{

gen wt2_`i' = (A_h/a_c_h)*(f^`dom')

gen wt1_`i' = d_HH/wt2_`i'

local ++i

}

**********************************************************************

* Stage D *** Fit Random intercept models ***

**********************************************************************

svyset v001, weight(wt2_1) strata(v022) , singleunit(centered) || _n, weight(wt1_1)

svy: melogit cumodern age secondary urban i.children || v001: 

estimates store model1

svyset v001, weight(wt2_2) strata(v022) , singleunit(centered) || _n, weight(wt1_2)

svy: melogit cumodern age secondary urban i.children || v001:

estimates store model2

svyset v001, weight(wt2_3) strata(v022) , singleunit(centered) || _n, weight(wt1_3)

svy: melogit cumodern age secondary urban i.children || v001:

estimates store model3

svyset v001, weight(wt2_4) strata(v022) , singleunit(centered) || _n, weight(wt1_4)

svy: melogit cumodern age secondary urban i.children || v001:

estimates store model4

svyset v001, weight(wt2_5) strata(v022) , singleunit(centered) || _n, weight(wt1_5)

svy: melogit cumodern age secondary urban i.children || v001:

estimates store model5

svyset v001, weight(wt2_6) strata(v022) , singleunit(centered) || _n, weight(wt1_6)

svy: melogit cumodern age secondary urban i.children || v001:

estimates store model6

svyset v001, weight(wt2_7) strata(v022) , singleunit(centered) || _n, weight(wt1_7)

svy: melogit cumodern age secondary urban i.children || v001:

estimates store model7

* assign levels-weight for model 8 (Level-1 weight = 1 and Level-2 weight = survey 

weight)

gen wt2_=d_HH

gen wt1_=1

svyset v001, weight(wt2_) strata(v022) , singleunit(centered) || _n, weight(wt1_)

svy: melogit cumodern age secondary urban i.children || v001:

estimates store model8

esttab model1 model2 model3 model4 model5 model6 model7 model8 using 

"C:\Users\......\melogti_results.csv", b(2) se(2) replace ///

title(Mixed effects models_Zimbabwe DHS 2015) ///

nonumbers mtitles("alpha = 0" "alpha = 0.10" "alpha = 0.25" "alpha = 0.50" "alpha = 

0.75" "alpha = 0.90" "alpha = 1" "w1 = 1")