I am using the GenMatch function from the Matching R-package to achieve a balance between the covariates in a treatment and control group.

The GenMatch function allows to set M, which is according to the documentation

A scalar for the number of matches which should be found. The default is one-to-one matching. Also see the ties option.

When checking the documentation for the ties option

A logical flag for whether ties should be handled deterministically. By default ties==TRUE. If, for example, one treated observation matches more than one control observation, the matched dataset will include the multiple matched control observations and the matched data will be weighted to reflect the multiple matches. The sum of the weighted observations will still equal the original number of observations. If ties==FALSE, ties will be randomly broken. If the dataset is large and there are many ties, setting ties=FALSE often results in a large speedup. Whether two potential matches are close enough to be considered tied, is controlled by the distance.tolerance option.

Based on the above, is there a way to figure out and argue for an optimal value for M?

I am a bit confused that the default is M=1, since my initial though would be to think the more matches the better. Therefore, I am also wondering what are the disadvantages of one-to-many?


1 Answer 1


There is no general answer as to whether more or fewer matches is better, as it depends on the unique but unknown qualities of your dataset. In general, having a larger sample size (i.e., more matches) yields more precise estimates because less information is discarded. That said, including more control units typically means that you are choosing the second-best matches to the treated units in addition to the best matches. But the second-best matches may not be very good, in which case you add noise to your estimates by including more low-quality matches. The endeavor of matching involves managing the tradeoff between decreasing the sample size used in your analysis while ensuring sufficient balance on the covariates. The number of matches should be seen as a tuning parameter in this problem.

My advice is to try increasing M until the additional matched controls are no longer worth the decrement in balance that will typically occur. Often, M=1 will give the best balance, but M=2 may be tolerable as well. With larger datasets (i.e., more treated units), it's more important to control bias by ensuring good balance, in which case using a small M with good balance is preferable. With medium-sized datasets, it may be that bias can be introduced as long as variance is decreased, in which case using a larger M with slightly worse balance is preferable. With small datasets, matching should not be used because too much information is discarded; regression-based methods would probably fare better.

Also, don't overlook other kinds of matching if you are going to use matching. Genetic matching can take a long time and doesn't always perform better than propensity score matching. Regardless, make sure you correct the bias in the matched estimates using the BiasAdjust argument.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.