Health Care Costs – Part 3, "Why You Are Paying More"

July 19, 2012

(This article was first published on Graph of the Week, and kindly contributed to R-bloggers)

yearly dollars awarded malpractice

Malpractice – A Booming Industry?

Perhaps authors Frank Sloan, Randall Bovbjerg and Penny Githens capture it best from their book Insuring Medical Malpractice:

“If aging Doctor Kildare were to return to medical practice today, having been in suspended animation since the early 1960s, he would find enormous changes in his malpractice insurance coverage. The first surprise is that the physician’s malpractice coverage has become so important. No longer can he practice at his hospital without it. And much higher limits are needed to protect his practice and other assets against the financial risks of lawsuits.”

This history of health insurance is a story of evolution, revealing ecological niches in the system allowing for the growth of malpractice lawyers and casualty insurers. In other words, doctors now have to protect themselves against financial ruin by purchasing malpractice insurance.

A quick glance at the above graph will quickly show that from 1990-2004 the dollar amounts awarded in malpractice cases rose significantly, with the largest gain coming in a five year period from 2000 – 2004. The publicity surrounding these astonishingly high payouts was intense, resulting in various forms of tort reform implementing caps on malpractice payouts in some states. Since then, the total amount awarded of medical malpractice claims have decreased.

Yet health care costs still continue to rise.

Survival of the Fittest

How then, can falling malpractice awards be related to rising health care costs? As noted in the conclusion of part 2 of this series, the health care system is complex and interdependent on numerous variables. In this case, it can take several years before the industry can recognize a trend (positive or adverse).

Insurance companies need to build a pool of money in order to be prepared for claims that will inevitably follow. This is done in two major ways: 1) premiums and 2) investments. Not unlike a bank, they will use some of the money gathered from premiums and invest it so that more money can be earned, thus allowing them to enact various business strategies including “price wars.” In this case, larger companies with larger pools of money can force smaller companies out of business by offering low rates at a loss long enough to snuff out the competition.

It’s a race of attrition.

Couple that with a large increase in malpractice payouts (as shown above) and the net result is twofold: 1) fewer casualty insurers and 2) higher premiums enacted for those left standing. All of that lost money has to be recovered somehow and it falls on the customers themselves to provide it – the very same customers who caused it by winning large sums of money in malpractice cases.

yearly trend performance casualty insurers

If That Wasn’t Enough…

The above graph shows just how bad things got for casualty insurers. The combined ratio was well over 100% for several years, peaking in 2001. For every percentage point above 100 a company paid out more than what it took in, all factors considered (except investments).

So, in 1991 when the combined ratio peaked at 154%, the industry as a whole was paying out $1.54 for each $1.00 that it took in. Granted, this does not consider investment income. However, the return on investments for these companies have shown a slight decline for the past few years resulting in less auxiliary income for their reserves. Less money in reserve means less money for investments, which means less money in reserves and – you get the picture. The bottom line is that it will take quite a while before they can build those reserves back up – something which they are still attempting to do (in an unstable economy at that).

And what is the quickest way to build those reserves? Higher premiums, which explains why heath care costs are continuing to rise even after the peak of disaster passed several years ago.


While researching health care costs, this author found himself in a world he would not like to visit again anytime soon. It’s a tricky business – one that deserves far more attention that what is provided here. The above graphs do indeed correlate – almost exactly – with the largest rise in health care costs as noted in part 1. Therefore – and despite what some senators and other media might suggest otherwise – malpractice payouts and aggressive business practices appear to be root causes. In the former, we did this to ourselves  – after all, juries are made up of our ‘peers’ who thought that these high rewards were justified. Regarding the latter – when insurance companies become too involved in eliminating competition, the costs of doing inevitably end up being shouldered by their customers (we win in the short run and lose in the long).

As a side note, the scenario described here in parts 1, 2 and 3 is indicative of a repeating pattern. It would not surprise this author if premiums decreased for a while before this scenario plays out again. If that is indeed true, perhaps we can all enjoy lower rates in the upcoming years until the next cycle hits. Further, this is the time for new casualty insurers to spring up and re-populate the ecosystem, hopefully bringing fresh ideas and technology resulting in lower costs for all of us.

1) The time is ripe for innovative companies to shake-up the health care system – are they out there?
2) Is there a checks and balances system for lawyers and judges to prevent fraud?
3) Are other countries suffering the same fate as the U.S. with regards to health care costs?


Further Reading:

These graphs were generated using the ‘ggplot2‘ and ‘maps‘ packages within the R programming language. Additional graphics were created/edited using GIMP.

1st graph:
ggplot(malpractice.melt.frame, aes(x=as.integer(substr(variable,2,5)), y=as.numeric(value)*as.numeric(Amount), color=Malpractice.Payment.Range)) +
    geom_rect(aes(xmin=1990, xmax=2000, ymin=0, ymax=5000000000), fill="red", color="gray", alpha=0.002) +
    geom_rect(aes(xmin=2000, xmax=2004, ymin=0, ymax=5000000000), fill="red", color="gray", alpha=0.01) +
    geom_rect(aes(xmin=2004, xmax=2011, ymin=0, ymax=5000000000), fill="green", color="gray", alpha=0.005) +
    geom_text(x=1994.5, y=4900000000, label="(Combined Ratios Rising)", size=3, color="dark blue") +
    geom_text(x=2002, y=4900000000, label="(Combined Ratios Peak)", size=3, color="dark blue") +
    geom_text(x=2007.5, y=4900000000, label="(Combined Ratios Falling)", size=3, color="dark blue") +
    geom_text(x=1990, y=1500000000, label="$1,515,750,000", size=2.5) +
    geom_text(x=2011.2, y=2200000000, label="$2,280,000,000", size=2.5) +
    geom_text(x=1990, y=440000000, label="$491,250,000", size=2.5) +
    geom_text(x=2011.2, y=2700000000, label="$2,467,500,000", size=2.5) +
    geom_text(x=1990, y=5000000, label="$57,000,000", size=2.5) +
    geom_text(x=2011.2, y=310000000, label="$381,000,000", size=2.5) +
    #geom_point() +
    geom_line(aes(group=Malpractice.Payment.Range), size=1.2) +
            "< $500,000",
            "$500,000 - $2,000,000",
            "> $2,000,000"),  
        values=newPalette) +
    scale_y_continuous(limits = c(0,as.numeric(5000000000)), labels = mysep) +
    ylab("Estimated Total Dollars Spent\n (using median value in range)\n") +
    xlab("Year") +
        plot.title=theme_text(size=24, family='Segoe'),
        title = "Estimated Dollars Awarded in Malpractice Cases\n",
        legend.title = theme_blank(),
        panel.background = theme_blank(),
        axis.line = theme_segment(),
        axis.text.x=theme_text(size=12, family='Segoe'),
        axis.text.y=theme_text(size=12, family='Segoe'),
        axis.title.x=theme_text(size=14, vjust=-0.4, family='Segoe'),
        axis.title.y=theme_text(size=14, hjust=0.5, angle=90, family='Segoe'),
        plot.margin = unit(c(1, 1, 1, 1), "cm"))

2nd graph:
ggplot(malpractice.ratios.frame, aes(x=year, y=combined.ratio)) +

    geom_rect(aes(xmin=1995, xmax=2010, ymin=40, ymax=69.99), fill="green", alpha=0.09) +
    geom_rect(aes(xmin=1995, xmax=2010, ymin=130, ymax=160), fill="red", alpha=0.09) +
    geom_rect(aes(xmin=1995, xmax=2010, ymin=70, ymax=99.99), fill="green", alpha=0.02) +
    geom_rect(aes(xmin=1995, xmax=2010, ymin=100, ymax=129.99), fill="red", alpha=0.02) +

    geom_rect(aes(xmin=1995, xmax=2010, ymin=40, ymax=160), fill="gray", alpha=0.01) +
    geom_rect(aes(xmin=1999.99, xmax=2000.01, ymin=40, ymax=160), fill="dark gray") +
    geom_rect(aes(xmin=2003.99, xmax=2004.01, ymin=40, ymax=160), fill="dark gray") +
    geom_point(size=3) +
    geom_line(aes(group=1), size=2) +
    geom_text(x=1995.3, y=65, label="Best", size=5, color="dark blue") +
    geom_text(x=1995.35, y=95, label="Good", size=5, color="dark blue") +
    geom_text(x=1995.25, y=125, label="Bad", size=5, color="dark blue") +
    geom_text(x=1995.4, y=155, label="Worst", size=5, color="dark blue") +
    geom_text(x=2002, y=50, label="(Peak Malpractice Payout Years)", size=3, color="dark blue") +
    geom_text(x=1997.5, y=50, label="(Rising Malpractice Payout Years)", size=3, color="dark blue") +
    geom_text(x=2007, y=50, label="(Falling Malpractice Payout Years)", size=3, color="dark blue") +
    scale_y_continuous(limits=c(40,160)) +
    ylab("Combined Ratio (%)\n") +
    xlab("Year") +
        plot.title=theme_text(size=24, family='Segoe'),
        title = "Combined Ratios for Casualty Insurers\n",
        legend.title = theme_blank(),
        panel.background = theme_blank(),
        axis.line = theme_segment(),
        axis.text.x=theme_text(size=12, family='Segoe'),
        axis.text.y=theme_text(size=12, family='Segoe'),
        axis.title.x=theme_text(size=14, vjust=-0.4, family='Segoe'),
        axis.title.y=theme_text(size=14, hjust=0.5, angle=90, family='Segoe'),
        plot.margin = unit(c(1, 3, 1, 1), "cm"))

To leave a comment for the author, please follow the link and comment on their blog: Graph of the Week. offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...

Comments are closed.


Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)