# Why do estimates differ so much between Instrumental Variable (ivreg) vs 2SLS (lm)?

I am working with some messy pilot data to figure out whether Instrumental Variable analysis will help interpret the results of a randomized controlled trial I am preparing. Treatment compliance in the pilot study was extremely low (15%) and will probably be low or moderate in the real study. Consequently, the intent-to-treat effect (i.e., just contrasting over group assignment) is likely to be very weak, but I still need to be able to estimate the hypothetical effect of complying with the treatment protocol.

Although the topic of my study is quite different, this paper on police body cameras deals with very similar issues (inconsistent compliance among the treatment group, where participants' compliance is probably also confounded with some of the other covariates). I decided to try to adapt their idea, so I started exploring IV analysis as a way to resolve my problem by using randomly assigned group as the instrument of compliance. In R terms:

ivreg(outcome ~ compliance+covars, ~treatment+covars, myData).

However, it's also my understanding that 2-stage least squares approach (2SLS) should provide identical coefficients as IV for the minimal "just identified" model:

ivreg(outcome~compliance|treatment,myData

despite s.e. being incorrect. (just for one source, these course notes.)

My problem is that strictly following these instructions, 2SLS is predicting double the effect of Compliance that ivreg is predicting in the just identified model. That doesn't pass the sniff-test to me.

I'm afraid I'm doing something wrong in this very simple analysis. I'm going to include covariates later, but if this minimal model is producing unexpected behavior, I really don't know how to interpret the more complicated model(s).

Can anybody suggest what circumstances one would expect estimated coefficients in 2SLS to be MUCH larger than IVreg, and which model I should trust (if any)? or how I should change my approach?