Saturday, June 28, 2025

Regression Discontinuity Design: How It Works and When to Use It


You’re an avid information scientist and experimenter. You recognize that randomisation is the summit of Mount Proof Credibility, and also you additionally know that when you possibly can’t randomise, you resort to observational information and Causal Inference methods. At your disposal are numerous strategies for spinning up a management group — difference-in-differences, inverse propensity rating weighting, and others. With an assumption right here or there (some shakier than others), you estimate the causal impact and drive decision-making. However if you happen to thought it couldn’t get extra thrilling than “vanilla” causal inference, learn on.

Personally, I’ve typically discovered myself in not less than two situations the place “simply doing causal inference” wasn’t simple. The widespread denominator in these two situations? A lacking management group — at first look, that’s.

First, the cold-start situation: the corporate needs to interrupt into an uncharted alternative area. Typically there is no such thing as a experimental information to be taught from, nor has there been any change (learn: “exogenous shock”), from the enterprise or product facet, to leverage within the extra widespread causal inference frameworks like difference-in-differences (and different cousins within the pre-post paradigm).

Second, the unfeasible randomisation situation: the organisation is completely intentional about testing an concept, however randomisation isn’t possible—or not even needed. Even emulating a pure experiment is perhaps constrained legally, technically, or commercially (particularly when it’s about pricing), or when interference bias arises within the market.

These conditions open up the area for a “completely different” sort of causal inference. Though the tactic we’ll give attention to right here isn’t the one one fitted to the job, I’d love so that you can tag alongside on this deep dive into Regression Discontinuity Design (RDD).

On this publish, I’ll offer you a crisp view of how and why RDD works. Inevitably, this can contain a little bit of math — a nice sight for some — however I’ll do my finest to maintain it accessible with basic examples from the literature.

We’ll additionally see how RDD can sort out a thorny causal inference problem in e-commerce and on-line marketplaces: the impression of itemizing place on itemizing efficiency. On this sensible part we’ll cowl key modelling concerns that practitioners typically face: parametric versus non-parametric RDD, selecting the best bandwidth parameter, and extra. So, seize your self a cup of of espresso and let’s bounce in!

Define

How and why RDD works 

Regression Discontinuity Design exploits cutoffs — thresholds — to recuperate the impact of a remedy on an end result. Extra exactly, it appears for a pointy change within the chance of remedy project on a ‘operating’ variable. If remedy project relies upon solely on the operating variable, and the cutoff is bigoted, i.e. exogenous, then we will deal with the models round it as randomly assigned. The distinction in outcomes simply above and beneath the cutoff provides us the causal impact.

For instance, a scholarship awarded solely to college students scoring above 90, creates a cutoff primarily based on take a look at scores. That the cutoff is 90 is bigoted — it may have been 80 for that matter; the road had simply to be drawn someplace. Furthermore, scoring 91 vs. 89 makes the entire distinction as for the remedy: both you get it or not. However relating to functionality, the 2 teams of scholars that scored 91 and 89 are usually not actually completely different, are they? And people who scored 89.9 versus 90.1 — if you happen to insist?

Making the cutoff may come all the way down to randomness, when it’s only a bout a number of factors. Possibly the coed drank an excessive amount of espresso proper earlier than the take a look at — or too little. Possibly they acquired dangerous information the evening earlier than, had been thrown off by the climate, or nervousness hit on the worst doable second. It’s this randomness that makes the cutoff so instrumental in RDD.

And not using a cutoff, you don’t have an RDD — only a scatterplot and a dream. However, the cutoff by itself isn’t geared up with all it takes to determine the causal impact. Why it really works hinges on one core identification assumption: continuity.

The continuity assumption, and parallel worlds

If the cutoff is the cornerstone of the approach, then its significance comes fully from the continuity assumption. The concept is a straightforward, counterfactual one: had there been no remedy, then there would’ve been no impact.

To floor the thought of continuity, let’s bounce straight right into a basic instance from public well being: does authorized alcohol entry enhance mortality?

Think about two worlds the place everybody and all the pieces is similar. Aside from one factor: a legislation that units the minimal authorized ingesting age at 18 years (we’re in Europe, of us).

On this planet with the legislation (the factual world), we’d count on alcohol consumption to leap proper after age 18. Alcohol-related deaths ought to bounce too, if there’s a hyperlink.

Now, take the counterfactual world the place there is no such thing as a such legislation; there must be no such bounce. Alcohol consumption and mortality would probably observe a {smooth} development throughout age teams.

Now, that’s a very good factor for figuring out the causal impact; the absence of a bounce in deaths within the counterfactual world is the needed situation to interpret a bounce within the factual world because the impression of the legislation.

Put merely: if there is no such thing as a remedy, there shouldn’t be a bounce in deaths. If there’s, then one thing apart from our remedy is inflicting it, and the RDD isn’t legitimate.

Two parallel worlds. From left to proper; one the place there is no such thing as a minimal age to devour alcohol legally, and one the place there’s: 18 years.

The continuity assumption will be written within the potential outcomes framework as:

start{equation}
lim_{x to c^-} mathbb{E}[Y_i(0) mid X_i = x] = lim_{x to c^+} mathbb{E}[Y_i(0) mid X_i = x]
label{eq: continuity_po}
finish{equation}

The place (Y_i(0)) is the potential end result, say, danger of dying of topic (/mathbb{i}) beneath no remedy.

Discover that the right-hand facet is a amount of the counterfactual world; not one that may be noticed within the factual world, the place topics are handled in the event that they fall above the cutoff.

Sadly for us, we solely have entry to the factual world, so the belief can’t be examined instantly. However, fortunately, we will proxy it. We are going to see placebo teams obtain this later within the publish. However first, we begin by figuring out what can break the belief:

  1. Confounders: one thing apart from the remedy occurs on the cutoff that additionally impacts the end result. For example, adolescents resorting to alcohol to alleviate the crushing stress of being an grownup now — one thing that has nothing to do with the legislation on the minimal age to devour alcohol (within the no-law world), however that does confound the impact we’re after, occurring on the similar age — the cutoff, that’s.
  2. Manipulating the operating variable:
    When models can affect their place with regard to the cutoff, it could be that models who did so are inherently completely different from those that didn’t. Therefore, cutoff manipulation may end up in choice bias: a type of confounding. Particularly if remedy project is binding, topics might strive their finest to get one model of the remedy over the opposite.

Hopefully, it’s clear what constitutes a RDD: the operating variable, the cutoff, and most significantly, affordable grounds to defend that continuity holds. With that, you’ve gotten your self a neat and efficient causal inference design for questions that may’t be answered by an A/B take a look at, nor by among the extra widespread causal inference methods like diff-in-diff, nor with stratification.

Within the subsequent part, we proceed shaping our understanding of how RDD works; how does RDD “management” confounding relationships? What precisely does it estimate? Can we not simply management for the operating variable too? These are questions that we sort out subsequent.

RDD and devices

If you’re already acquainted with instrumental variables (IV), you might even see the similarities: each RDD and IV leverage an exogenous variable that doesn’t trigger the end result instantly, however does affect the remedy project, which in flip might affect the end result. In IV it is a third variable Z; in RDD it’s the operating variable that serves as an instrument.

Wait. A 3rd variable; perhaps. However an exogenous one? That’s much less clear.

In our instance of alcohol consumption, it’s not exhausting to think about that age — the operating variable — is a confounder. As age will increase, so may tolerance for alcohol, and with it the extent of consumption. That’s a stretch, perhaps, however not implausible.

Since remedy (authorized minimal age) is dependent upon age — solely models above 18 are handled — handled and untreated models are inherently completely different. If age additionally influences the end result, by a mechanism just like the one sketched above, we acquired ourselves an apex confounder.

Nonetheless, the operating variable performs a key position. To know why, we have to have a look at how RDD and devices leverage the frontdoor criterion to determine causal results.

Backdoor vs. frontdoor

Maybe nearly instinctively, one might reply with controlling for the operating variable; that’s what stratification taught us. The operating variable is confounder, so we embody it in our regression, and shut the backdoor. However doing so would trigger some hassle.

Bear in mind, remedy project is dependent upon the operating variable so that everybody above the cutoff is handled with all certainty, and actually not beneath it. So, if we management for the operating variable, we run into two very associated issues:

  1. Violation of the Positivity assumption: this assumption says that handled models ought to have a non-zero chance to obtain the alternative remedy, and vice versa. Intuitively, conditioning on the operating variable is like saying: “Let’s estimate the impact of being above the minimal age for alcohol consumption, whereas holding age fastened at 14.” That doesn’t make sense. At any given worth of operating variable, remedy is both all the time 1 or all the time 0. So, there’s no variation in remedy conditional on the operating variable to help such a query.
  2. Excellent collinearity on the cutoff: in estimating the remedy impact, the mannequin has no option to separate the impact of crossing the cutoff from the impact of being at a specific worth of X. The outcome? No estimate, or a forcefully dropped variable from the mannequin design matrix. Singular design matrix, doesn’t have full rank, these ought to sound acquainted to most practitioners.

So no — conditioning on the operating variable doesn’t make the operating variable the exogenous instrument that we’re after. As a substitute, the operating variable turns into exogenous by pushing it to the restrict—fairly actually. There the place the operating variable approaches the cutoff from both facet, the models are the identical with respect to the operating variable. But, falling simply above or beneath makes the distinction as for getting handled or not. This makes the operating variable a legitimate instrument, if remedy project is the one factor that occurs on the cutoff. Judea Pearl refers to devices as assembly the front-door criterion.

X is the operating variable, D the remedy project, Y the end result, and U is a set of unobserved influences on the end result. The causal impact of D on Y is unidentified within the above marginal mannequin, for X being a confounder, and U doubtlessly too. Conditioning on X violates the positivity assumption. As a substitute, conditioning X on its limits in direction of cutoff (c0), controls for the backdoor path: X to Y instantly, and thru U.

LATE, not ATE

So, in essence, we’re controlling for the operating variable — however solely close to the cutoff. That’s why RDD identifies the native common remedy impact (LATE), a particular flavour of the typical remedy impact (ATE). The LATE appears like:

$$delta_{SRD}=Ebig[Y^1_i – Y_i^0mid X_i=c_0]$$

The native bit refers back to the partial scope of the inhabitants we’re estimating the ATE for, which is the subpopulation across the cutoff. The truth is, the additional away the information level is from the cutoff, the extra the operating variable acts as a confounder, working in opposition to the RDD as an alternative of in its favour.

Again to the context of the minimal age for authorized alcohol consumption instance. Adolescents who’re 17 years and 11 months previous are actually not so completely different from these which might be 18 years and 1 month previous, on common. If something, a month or two distinction in age isn’t going to be what units them aside. Isn’t that the essence of conditioning on, or holding a variable fixed? What units them aside is that the latter group can devour alcohol legally for being above the cutoff, and never the previous.

This setup allows us to estimate the LATE for the models across the cutoff and with that, the impact of the minimal age coverage on alcohol-related deaths.

We’ve seen how the continuity assumption has to carry to make the cutoff an attention-grabbing level alongside the operating variable in figuring out the causal impact of a remedy on the end result. Particularly, by letting the bounce within the end result variable be fully attributable to the remedy. If continuity holds, the remedy is as-good-as-random close to the cutoff, permitting us to estimate the native common remedy impact.

Within the subsequent part, we’ll stroll by the sensible setup of a real-world RDD: we determine the important thing ideas; the operating variable and cutoff, remedy, end result, covariates, and eventually, we estimate the RDD after discussing some essential modelling decisions, and finish the part with a placebo take a look at.

RDD in Motion: Search Rating and itemizing efficiency Instance

In e-commerce and on-line marketplaces, the start line of the client expertise is looking for a list. Consider the customer typing “Nikon F3 analogue digicam” within the search bar. Upon finishing up this motion, algorithms frantically kind by the stock searching for the perfect matching listings to populate the search outcomes web page.

Time and a focus are two scarce assets. So, it’s within the curiosity of everybody concerned — the client, the vendor and the platform — to order probably the most distinguished positions on the web page for the matches with the very best anticipated probability to grow to be profitable trades.

Moreover, place results in shopper behaviour recommend that customers infer larger credibility and desirability from gadgets “ranked” on the prime. Take into consideration high-tier merchandise being positioned at eye-height or above in supermarkets, and highlighted gadgets on an e-commerce platform, on the prime of the homepage.

So, the query then turns into: how does positioning on the search outcomes web page affect a list’s probabilities to be offered?

Speculation:
If a list is ranked larger on the search outcomes web page, then it would have the next probability of being offered, as a result of higher-ranked listings get extra visibility and a focus from customers.

Intermezzo: enterprise or concept?

As with all good speculation, we want a little bit of concept to floor it. Good for us is that we’re not looking for the treatment for most cancers. Our concept is about well-understood psychological phenomena and behavioural patterns, to place it overly subtle. 

Consider primacy impact, anchoring bias and the useful resource concept of consideration. These are properly concepts in behavioural and cognitive psychology that again up our plan right here.

Kicking off the dialog with a product supervisor can be extra enjoyable this manner. Personally, I additionally get excited when I’ve to brush up on some psychology.

However I’ve discovered by and thru {that a} concept is admittedly secondary to any initiative in my business (tech). Aside from a analysis crew and undertaking, arguably. And it’s truthful to say it helps us keep on-purpose: what we’re doing is to convey enterprise ahead, not mom science. 

Understanding the reply has actual enterprise worth. Product and industrial groups may use it to design new paid options that assist sellers get their listings on larger positions — a win for each the enterprise and the person. It may additionally make clear the worth of on-site actual property like banner positions and advert slots, serving to drive progress in B2B promoting.

The query is about incrementality: would’ve itemizing (mathbb{j}) been offered, had it been ranked 1st on the outcomes web page, as an alternative of fifteenth. So, we need to make a causal assertion. That’s exhausting for not less than two causes:

  1. A/B testing comes with a worth, and;
  2. there are confounders we have to cope with if we resort to observational strategies.

Let’s increase on that.

The price of A/B testing

One experiment design may randomise the fetched listings throughout the web page slots, unbiased of the itemizing relevance. Breaking the inherent hyperlink between relevance and place, we might be taught the impact of place on itemizing efficiency. It’s an attention-grabbing concept — however a pricey one. 

Whereas it’s an affordable design for statistical inference, this setup is sort of horrible for the person and enterprise. The person may need discovered what they wanted—perhaps even made a purchase order. However as an alternative, perhaps half of the stock they might have seen was remotely a very good match due to our experiment. This suboptimal person expertise probably hurts engagement in each the brief and long run — particularly for brand new customers who’re nonetheless to see what worth the platform holds for them. 

Can we consider a option to mitigate this loss? Nonetheless dedicated to A/B testing, one may expose a smaller set of customers to the experiment. Whereas it would scale down the results, it could additionally stand in the way in which of reaching adequate statistical energy by reducing the pattern measurement. Furthermore, even small audiences will be chargeable for substantial income for some firms nonetheless — these with hundreds of thousands of customers. So, slicing the uncovered viewers isn’t a silver bullet both.

Naturally, the way in which to go is to depart the platform and its customers undisturbed —  and nonetheless discover a option to reply the query at hand. Causal inference is the suitable mindset for this, however the query is: how can we do this precisely?

Confounders

Listings don’t simply make it to the highest of the web page on a very good day; it’s their high quality, relevance, and the sellers’ status that promote the rating of a list. Let’s name these three variables W.

What makes W difficult is that it influences each the rating of the itemizing and likewise the chance that the itemizing will get clicked, a proxy for efficiency.

In different phrases, W impacts each our remedy (place) and end result (click on), serving to itself with the standing of confounder.

A variable, or set thereof, W, is a confounder when it influences each, the remedy (rank, place) and end result of curiosity (click on).

Due to this fact, our process is to discover a design that’s match for function; one which successfully controls the confounding impact of W.

You don’t select regression discontinuity — it chooses you

Not all causal inference designs are simply sitting round ready to be picked. Generally they present up once you least want them, and generally you get fortunate once you want them most — like at the moment.

It appears like we will use the web page cutoff to determine the causal impression of place on clicks-through price.

Abrupt cutoff in search outcomes pagination

Let’s unpack the itemizing advice mechanism to see precisely how. Right here’s what occurs beneath the hood when a outcomes web page is generated for a search:

  1. Fetch listings matching the question
    A rough set of listings is pulled from the stock, primarily based on filters like location, radius, and class, and many others.
  2. Rating listings on private relevance
    This step makes use of person historical past and itemizing high quality proxies to foretell what the person is probably to click on.
  3. Rank listings by rating
    Greater scores get larger ranks. Enterprise guidelines combine in advertisements and industrial content material with natural outcomes.
  4. Populate pages
    Listings are slotted by absolute relevance rating. A outcomes web page ends on the okth itemizing, so the ok+1th itemizing seems on the prime of the subsequent web page. That is goes to be essential to our design.
  5. Impressions and person interplay
    Customers see the leads to order of relevance. If a list catches their eye, they could click on and examine extra particulars: one step nearer to the commerce.

Sensible setup and variables

So, what is precisely our design? Subsequent, we stroll by the reasoning and identification of the important thing elements of our design.

The operating variable

In our setup, the operating variable is the relevance rating (s_j) for itemizing j. This rating is a steady, advanced operate of each person and itemizing properties:

$$s_j = f(u_i, l_j)$$

The itemizing’s rank (r_j) is solely a rank transformation of (s_j), outlined as:

$$r_i = sum_{j=1}^{n} mathbf{1}(s_j leq s_i)$$

Virtually talking, which means that for analytic functions—akin to becoming fashions, making native comparisons, or figuring out cutoff factors—understanding a list’s rank conveys almost the identical data as understanding its underlying relevance rating, and vice versa.

Particulars: Relevance rating vs. rank

The relevance rating (s_j) displays how properly a list matches a particular person’s question, given parameters like location, worth vary, and different filters. However this rating is relative—it solely has which means inside the context of the listings returned for that specific search.

In distinction, rank (or place) is absolute. It instantly determines a list’s visibility. I consider rank as a standardising transformation of (s_j). For instance, Itemizing A in search Z may need the very best rating of 5.66, whereas Itemizing B in search Okay tops out at 0.99. These uncooked scores aren’t comparable throughout searches—however each listings are ranked first of their respective outcome units. That makes them equal when it comes to what actually issues right here: how seen they’re to customers.

The cutoff, and remedy

If a list simply misses the primary web page, it doesn’t fall to the underside of web page two — it’s artificially bumped to the highest. That’s a fortunate break. Usually, solely probably the most related listings seem on the prime, however right here a list of merely reasonable relevance results in a primary slot —albeit on the second web page — purely as a result of arbitrary place of the web page break. Formally, the remedy project (D_j) goes like:

$$D_j = start{instances} 1 & textual content{if } r_j > 30 0 & textual content{in any other case} finish{instances}$$

(Word on international rank: Rank 31 isn’t simply the primary itemizing on web page two; it’s nonetheless the thirty first itemizing total)

The energy of this setup lies in what occurs close to the cutoff: a list ranked 30 could also be almost equivalent in relevance to 1 ranked 31. A small scoring fluctuation — or a high-ranking outlier — can push a list over the edge, flipping its remedy standing. This native randomness is what makes the setup legitimate for RDD.

The result: Impression-to-click

Lastly, we operationalise the end result of curiosity because the click-though price from impressions to clicks. Keep in mind that all listings are ‘impressed’ when when the web page is populated. The clicking is the binary indicator of the specified person behaviour.

In abstract, that is our setup:

  • Final result: impression-to-click conversion
  • Therapy: Touchdown on the primary vs. second web page
  • Operating variable: itemizing rank; web page cutoff at 30 

Subsequent we stroll by easy methods to estimate the RDD. 

Estimating RDD

On this part, we’ll estimate the causal parameter, interpret it, and join them again to our core speculation: how place impacts itemizing visibility.

Right here’s what we’ll cowl:

  • Meet the information: Intro to the dataset
  • Covariates: Why and easy methods to embody them
  • Modelling decisions: parametric RDD vs. not. Selecting the polynomial diploma and bandwidth.
  • Placebo-testing
  • Density continuity testing

Meet the information

We’re working with impressions information from one among Adevinta’s (ex-eBay Classifieds Group) marketplaces. It’s actual information, which makes the entire train really feel grounded. That mentioned, values and relationships are censored and scrambled the place needed to guard its strategic worth.

An vital observe to how we interpret the RDD estimates and drive selections, is how the information was collected: solely these searches the place the person noticed each the primary and second web page had been included.

This fashion, we partial out the web page fastened impact if any, however the actuality is that many customers don’t make it to the second web page in any respect. So there’s a large quantity hole. We talk about the repercussion within the evaluation recap.

The dataset consists of those variables:

  • Clicked: 1 if the itemizing was clicked, 0 in any other case – binary
  • Place: the rank of the itemizing – numeric
  • D: remedy indicator, 1 if place > 30, 0 in any other case – binary
  • Class: product class of the itemizing – nominal
  • Natural: 1 if natural, 0 if from an expert vendor – binary
  • Boosted: 1 if was paid to be on the prime, 0 in any other case – binary
click on rel_position D class natural boosted
1 -3 0 A 1 0
1 -14 0 A 1 0
0 3 1 C 1 0
0 10 1 D 0 0
1 -1 0 Okay 1 1
A pattern of the dataset we’re working with.

Covariates: easy methods to embody them to extend accuracy?

The operating variable, the cutoff, and the continuity assumption, offer you all it’s essential to determine the causal impact. However together with covariates can sharpen the estimator by lowering variance — if performed proper. And, oh is it simple to do it mistaken.

The best factor to “break” concerning the RDD design, is the continuity assumption. Concurrently, that’s the final factor we need to break (I already rambled lengthy sufficient about this).

Due to this fact, the principle quest in including covariates is to it in such approach that we cut back variance, whereas preserving the continuity assumption intact. One option to formulate that, is to imagine continuity with out covariates and with covariates:

start{equation}
lim_{x to c^-} mathbb{E}[Y_i(0) mid X_i = x] = lim_{x to c^+} mathbb{E}[Y_i(0) mid X_i = x] textual content{(no covariates)}
finish{equation}

start{equation}
lim_{x to c^-} mathbb{E}[Y_i(0) mid X_i = x, Z_i] = lim_{x to c^+} mathbb{E}[Y_i(0) mid X_i = x, Z_i] textual content{(covariates)}
finish{equation}

The place (Z_i) is a vector of covariates, for topic i. Much less mathy, two issues ought to stay unchanged after including covariates:

  1. The practical type of the operating variable, and;
  2. The (absence of the) bounce in remedy project on the cutoff

I didn’t discover out the above myself; Calonico, Cattaneo, Farrell, and Titiunik (2018) did. They developed a proper framework for incorporating covariates into RDD. I’ll depart the main points to the paper. For now, some modelling pointers can preserve us going:

  1. Mannequin covariates linearly in order that the remedy impact stays the identical with and with out covariates, due to a easy and {smooth} partial impact of the covariates;
  2. Preserve the mannequin phrases additive, in order that the remedy impact stays the LATE, and doesn’t grow to be conditional on covariates (CATE); and to keep away from including a bounce on the cutoff.
  3. The above implies that there be no interactions with the remedy indicator, nor with the operating variable. Doing any of those might break continuity and invalidate our RDD design.

Our goal mannequin might appear to be this:

start{equation}
Y_i = alpha + tau D_i + f(X_i – c) + beta^prime Z_i + varepsilon_i
finish{equation}

For letting the covariates work together with the remedy indicator, the kind of mannequin we need to keep away from appears like this:

start{equation}
Y_i = alpha + tau D_i + f(X_i – c) + beta^prime (Z_i cdot D_i) + varepsilon_i
finish{equation}

Now, let’s distinguish between two methods of virtually together with covariates:

  1. Direct inclusion: Add them on to the end result mannequin alongside the remedy and operating variable.
  2. Residualisation: First regress the end result on the covariates, then use the residuals within the RDD.

We’ll use residualisation in our case. It’s an efficient approach cut back noise, produces cleaner visualisations, and protects the strategic worth of the information.

The snippet beneath defines the end result de-noising mannequin and computes the residualised end result, click_res. The concept is easy: as soon as we strip out the variance defined by the covariates, what stays is a much less noisy model of our end result variable—not less than in concept. Much less noise means extra accuracy.

In apply, although, the residualisation barely moved the needle this time. We will see that by checking the change in customary deviation:

SD(click_res) / SD(click on) - 1 provides us about -3%, which is small virtually talking.

# denoising clicks
mod_outcome_model <- lm(click on ~ l1 + natural + boosted, 
                        information = df_listing_level)

df_listing_level$click_res <- residuals(mod_outcome_model)

# the impression on variance is restricted: ~ -3%
sd(df_listing_level$click_res) / sd(df_listing_level$click on) - 1

Regardless that the denoising didn’t have a lot impact, we’re nonetheless in a great spot. The unique end result variable already has low conditional variance, and patterns across the cutoff are seen to the bare eye, as we will see beneath.

On the x-axis: ranks relative to the web page finish (30 positions on one web page), and on the y-axis: the residualised common click on by.

We transfer on to a couple different modelling selections that typically have an even bigger impression: selecting between parametric and non-parametric RDD, the polynomial diploma and the bandwidth parameter (h).

Modelling decisions in RDD

Parametric vs non-parametric RDD

You may marvel why we even have to decide on between parametric and non-parametric RDD. The reply lies in how every method trades off bias and variance in estimating the remedy impact.

Selecting parametric RDD is actually selecting to scale back variance. It assumes a particular practical type for the connection between the end result and the operating variable, (mathbb{E}[Y mid X]), and suits that mannequin throughout your entire dataset. The remedy impact is captured as a discrete bounce in an in any other case steady operate. The standard type appears like this:

$$Y = beta_0 + beta_1 D + beta_2 X + beta_3 D cdot X + varepsilon$$

Non-parametric RDD, however, is about lowering bias. It avoids sturdy assumptions concerning the international relationship between Y and X and as an alternative estimates the end result operate individually on both facet of the cutoff. This flexibility permits the mannequin to extra precisely seize what’s occurring proper across the threshold. The non-parametric estimator is:

(tau = lim_{x downarrow c} mathbb{E}[Y mid X = x] – lim_{x uparrow c} mathbb{E}[Y mid X = x])

So, which do you have to select? Truthfully, it might really feel arbitrary. And that’s okay. That is the primary in a collection of judgment calls that practitioners typically name the enjoyable a part of RDD. It’s the place modelling turns into as a lot an artwork as it’s a science.

I’ll stroll by how I method that selection. However first, let’s have a look at two key tuning parameters (particularly for non-parametric RDD) that may information our last choice: the polynomial diploma and the bandwidth, h.

Polynomial diploma

The connection between end result and the operating variable can take many varieties, and capturing its true form is essential for estimating the causal impact precisely. In the event you’re fortunate, all the pieces is linear and there’s no want to consider polynomials — In the event you’re a realist, then you definately most likely need to learn the way they’ll serve you within the course of. 

In choosing the suitable polynomial diploma, the objective is to scale back bias, with out inflating the variance of the estimator. So we need to enable for flexibility, however we don’t need to do it greater than needed. Take the examples within the picture beneath: with an end result of low sufficient variance, the linear type naturally invitations the eyes to estimate the end result on the cutoff. However the estimate turns into biased with solely a barely extra advanced type, if we implement a linear form within the mannequin. Insisting on a linear type in such a fancy case is like becoming your toes right into a glove: It sort of works, however it’s very ugly. 

As a substitute, we give the mannequin extra levels of freedom with a higher-degree polynomial, and estimate the anticipated (tau = lim_{x downarrow c} mathbb{E}[Y mid X = x] – lim_{x uparrow c} mathbb{E}[Y mid X = x]), with decrease bias.

, and failing to take action might introduce bias.

The bandwidth parameter: h

Working with polynomials in the way in which that’s described above doesn’t come freed from worries. Two issues are required and pose a problem on the similar time: 

  1.  we have to get the modelling proper for total vary, and;
  2.  your entire vary must be related for the duty at hand, which is estimating (tau = lim_{x downarrow c} mathbb{E}[Y mid X = x] – lim_{x uparrow c} mathbb{E}[Y mid X = x]) 

Solely then we cut back bias as supposed; If one among these two isn’t the case, we danger including extra of it. 

The factor is that modelling your entire vary correctly is harder than modelling a smaller vary, specifically if the shape is advanced. So, it’s simpler to make errors. Furthermore, your entire vary is sort of sure to not be related to estimate the causal impact — the “native” in LATE provides it away. How can we work round this?

Enter the bandwidth parameter, h. The bandwidth parameters aids the mannequin in leveraging information that’s nearer to the cutoff, dropping the international information concept, and bringing it again to the native scope RDD estimates the impact for. It does so by weighting the information by some operate (mathbb{w}(X)) in order that extra weight is given to entries close to the cutoff, and fewer to the entries additional away.

For instance, with h = 10, the mannequin considers the vary of whole size 20; 10 on all sides of the cutoff.

The efficient weight is dependent upon the operate, (mathbb{w}). A bandwidth operate that has a hard-boundary behaviour is named a sq., or uniform, kernel. Consider it as a operate that offers weights 1 when the information is inside bandwidth, and 0 in any other case. The gaussian and triangular kernels are two different often used kernels by practitioners. The important thing distinction is that these behave much less abruptly in weighting of the entries, in comparison with the sq. kernel. The picture beneath visualises the behaviour of the three kernels features.

Three weighting features visualised. The y-axis represents the burden. The sq. kernel acts as a hard-cutoff as to which entries it permits to be seen by the mannequin. The triangular and gaussian features behave extra easily with respect to this.

Every thing put collectively: non- vs. parametric RDD, polynomial diploma and bandwidth

To me, selecting the ultimate mannequin boils all the way down to the query: what’s the easiest mannequin that does the nice job? Certainly — the precept of Occam’s razor by no means goes out of style. In practise, this implies:

  1. Non- vs. Parametric: is the practical type easy on either side of the cutoff? Then a single match, pooling information from either side will do. In any other case, nonparametric RDD provides the pliability that’s wanted to embrace two completely different dynamics on both facet of the cutoff.
  2. Polynomial diploma: when the operate is advanced, I opt-in for larger levels to observe the development higher flexibly.
  3. Bandwidth: if simply picked a excessive polynomial diploma, then I’ll let h be bigger too. In any other case, decrease values for h typically go properly with decrease levels of polynomials in my expertise*, **.

* This brings us to the commonly accepted advice within the literature: preserve the polynomial diploma decrease than 3. In most use instances 2 works properly sufficient. Simply be sure you decide mindfully.

** Additionally, observe that h suits particularly properly within the non-parametric mentality; I see these two decisions as co-dependent.

Again to the itemizing place situation. That is the ultimate mannequin to me:

# modelling the residuals of the end result (de-noised)
mod_rdd <- lm(click_res ~ D + ad_position_idx,
              weight = triangular_kernel(x = ad_position_idx, c = 0, h = 10),  # that is h
              information = df_listing_level)

Deciphering RDD outcomes

Let’s have a look at the mannequin output. The picture beneath exhibits us the mannequin abstract. In the event you’re acquainted with that, all of it will come all the way down to deciphering the parameters.

The very first thing to take a look at is that handled listings have ~1% level larger chance of being clicked, than untreated listings. To place that in perspective, that’s a +20% change if the press price of the management is 5%, and ~ +1% enhance if the management is 80%. Relating to sensible significance of this causal impact, these two uplifts are day and evening. I’ll depart this open-ended with a number of inquiries to take house: when would you and your crew label this impression as a possibility to leap on? What different information/solutions do we have to declare this monitor worthy of following?

The rest of the parameters don’t actually add a lot to the interpretation of the causal impact. However let’s go over them rapidly, nonetheless. The second estimate (x) is that of the slope beneath cutoff slope; the third one (D x (mathbb(x))) is the extra [negative] factors added to the earlier slope to replicate the slope above the cutoff; Lastly, the intercept is the typical for the models proper beneath the cutoff. As a result of our end result variable is residualised, the worth -0.012 is the demeaned end result; it not is on the dimensions of the unique end result.

Totally different decisions, completely different fashions

I’ve put this picture collectively to point out a group of different doable fashions, had we made completely different decisions in bandwidth, polynomial diploma, and parametric-versus-not. Though hardly any of those fashions would have put the choice maker on a very mistaken path on this specific dataset, every mannequin comes with its bias and variance properties. This does color our confidence of the estimate.

Placebo testing

In any causal inference methodology, the identification assumption is all the pieces. One factor is off, and your entire evaluation crumbles. We will fake all the pieces is alright, or we put our strategies to the take a look at ourselves (imagine me, it’s higher once you break your personal evaluation earlier than it goes on the market)

Placebo testing is one option to corroborate the outcomes. Placebo testing checks the validity of outcomes by utilizing a setup equivalent to the actual one, minus the precise remedy. If we nonetheless see an impact, it alerts a flawed design — continuity can’t be assumed, and causal results can’t be recognized.

Good for us, we’ve got a placebo group. The 30-listing web page lower solely exists on the desktop model of the platform. On cellular, infinite scroll makes it one lengthy web page; no pagination, no web page bounce. So the impact of “going to the subsequent web page” shouldn’t seem, and it doesn’t.

I don’t assume we have to do a lot inference. The graph beneath already tells us your entire story: with out pages, going from the thirtieth place to the thirty first isn’t completely different from going from another place to the subsequent. Extra importantly, the operate is {smooth} on the cutoff. This discovering provides an excessive amount of credibility to our evaluation by showcasing that continuity holds on this placebo group.

The placebo take a look at is among the strongest checks in an RDD. It assessments the continuity assumption nearly instantly, by treating the placebo group as a stand-in for the counterfactual.

After all, this depends on a brand new assumption: that the placebo group is legitimate; that it’s a sufficiently good counterfactual. So the take a look at is highly effective provided that that assumption is extra credible than assuming continuity with out proof.

Which signifies that we have to be open to the likelihood that there is no such thing as a correct placebo group. How can we stress-test our design then?

No-manipulation and the density continuity take a look at

Fast recap. There are two associated sources of confounding and therefore to violating the continuity assumption:

  1. direct confounding from a 3rd variable on the cutoff, and
  2. manipulation of the operating variable.

The primary can’t be examined instantly (besides with a placebo take a look at). The second can.

If models can shift their operating variable, they self-select into remedy. The comparability stops being truthful: we’re now evaluating manipulators to those that couldn’t or didn’t. That self-selection turns into a confounder, if it additionally impacts the end result.

For example, college students who didn’t make the lower for a scholarship, however go on to successfully smooth-talk their establishment into letting them go with the next rating. That silver tongue can even assist them getting higher salaries, and act as confounder after we examine the impact of scholarships on future revenue.

In DAG type, operating variable manipulation causes choice bias, which in flip makes that the continuity assumption doesn’t longer maintain. If we all know that continuity holds, then there is no such thing as a want to check for choice bias by manipulation. However after we can’t (as a result of there is no such thing as a good placebo group), then not less than we will attempt to take a look at if there’s manipulation.

So, what are the indicators that we’re in such situation? An unexpectedly excessive variety of models simply above the cutoff, and a dip just under (or vice versa). We will see this as one other continuity query, however this time when it comes to the density of the samples.

Whereas we will’t take a look at the continuity of the potential outcomes instantly, we will take a look at the continuity of the density of the operating variable on the cutoff. The McCrary take a look at is the usual instrument for this, precisely testing:

(H_0: lim_{x to c^-} f(x) = lim_{x to c^+} f(x) quad textual content{(No manipulation)})

(H_A: lim_{x to c^-} f(x) neq lim_{x to c^+} f(x) quad textual content{(Manipulation)})

the place (f(x)) is the density operate of the operating variable. If (f(x)) jumps at x = c, it means that models have sorted themselves simply above or beneath the cutoff — violating the belief that the operating variable was not manipulable at that margin.

The internals of this take a look at is one thing for a distinct publish, as a result of fortunately we will rely rdrobust::rddensity to run this take a look at, off-the-shelf.

require(rddensity)
density_check_obj <- rddensity(X = df_listing_level$ad_position_idx, 
                               c = 0)
abstract(density_check_obj)

# for the plot beneath
rdplotdensity(density_check_obj, X = df_listing_level$ad_position_idx)
A visible illustration of the McCrary take a look at.

The take a look at exhibits marginal proof of a discontinuity within the density of the operating variable (T = 1.77, p = 0.077). Binomial counts are unbalanced throughout the cutoff, suggesting fewer observations just under the edge.

Often, it is a purple flag as it could pose a thread to the continuity assumption. This time nonetheless, we all know that continuity truly holds (see placebo take a look at).

Furthermore, rating is finished by the algorithm: sellers don’t have any means to control the rank of their listings in any respect. That’s one thing we all know by design.

Therefore, a extra believable rationalization is that the discontinuity within the density is pushed by platform-side impression logging (not rating), or my very own filtering within the SQL question (which is elaborate, and lacking values on the filter variables are usually not unusual).

Inference

The outcomes will do that time round. However Calonico, Cattaneo, and Titiunik (2014) spotlight a number of points with OLS RDD estimates like ours. Particularly, about 1) the bias in estimating the anticipated end result on the cutoff, that not is admittedly at the cutoff after we take samples additional away from it, and a pair of) the bandwidth-induced uncertainty that’s not noted of the mannequin (as h is handled as a hyperparameter, not a mannequin parameter).

Their strategies are applied in rdrobust, an R and Stata package deal. I like to recommend utilizing that software program in analyses which might be about driving real-life selections.

Evaluation recap

We checked out how a list’s spot within the search outcomes impacts how typically it will get clicked. By specializing in the cutoff between the primary and second web page, we discovered a transparent (although modest) causal impact: listings on the prime of web page two acquired extra clicks than these caught on the backside of web page one. A placebo take a look at backed this up—on cellular, the place there’s infinite scroll and no actual “pages,” the impact disappears. That provides us extra confidence within the outcome. Backside line: the place a list exhibits up issues, and prioritising prime positions may enhance engagement and create new industrial prospects.

However earlier than we run with it, a few vital caveats.

First, our result’s native—it solely tells us what occurs close to the page-two cutoff. We don’t know if the identical impact holds on the prime of web page one, which most likely alerts much more worth to customers. So this is perhaps a lower-bound estimate.

Second, quantity issues. The primary web page will get much more eyeballs. So even when a prime slot on web page two will get extra clicks per view, a decrease spot on web page one may nonetheless win total.

Conclusion

Regression Discontinuity Design isn’t your on a regular basis causal inference methodology — it’s a nuanced method finest saved for when the celebrities align, and randomisation isn’t doable. Just remember to have a very good grip on the design, and be thorough concerning the core assumptions: attempt to break them, after which strive tougher. When you may have what you want, it’s an extremely satisfying design. I hope this studying serves you properly the subsequent time you get a possibility to use this methodology. 

It’s nice seeing that you just acquired this far into this publish. If you wish to learn extra, it’s doable; simply not right here. So, I compiled a small checklist of assets for you:

Additionally take a look at the reference part beneath for some deep-reads.

Completely happy to attach on LinkedIn, the place I talk about extra subjects just like the one right here. Additionally, be happy to bookmark my private web site that’s a lot cosier than right here.


All photos on this publish are my very own. The dataset that I used is actual, and it’s not publicly accessible. Furthermore, the values extracted from it are anonymised; modified or omitted, to keep away from revealing strategic insights concerning the firm.

References

Calonico, S., Cattaneo, M. D., Farrell, M. H., & Titiunik, R. (2018). Regression Discontinuity Designs Utilizing Covariates. Retrieved from http://arxiv.org/abs/1809.03904v1

Calonico, S., Cattaneo, M. D., & Titiunik, R. (2014). Sturdy nonparametric confidence intervals for regression-discontinuity designs. Econometrica, 82(6), 2295–2326. https://doi.org/10.3982/ECTA11757

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles

PHP Code Snippets Powered By : XYZScripts.com