On a carat for carat basis, rubies are worth more than diamonds of similar size and weight. The reason that rubies are more expensive is the fact that it is much rarer for rubies to be found without faults than it is to find a flawless diamond.
Not only is it more difficult to find higher quality rubies but it is also difficult to find them above a certain size and weight. For example, there are many cases where diamonds have been found above three carats. However, there have only been a handful of discoveries of rubies that size as of January 2015.