Agh! the dreaded 

You have reached the maximum number of 10 object references on XXX.

You must remove at least 1 relationship(s) in order to save this Formula Field.

I HATE this error... probably even more than I HATE the dreaded 5000 Character Limit on Formulas.

So I had to investigate this more fully. 

Why it happens

Examples

Options

Notes

Official KB Article https://help.salesforce.com/HTViewSolution?id=000006372&language=en_US

One response:

  • Consider if there are other ways to expose data in formula fields. For example if you want to see information on an object 1-2 levels away on an object’s detail page but not report on it, you can require users to hover over the lookup link to view the details.
  • If you have multiple references to the same type of object (for example, you reference four different contacts in formula fields, each with a different purpose), consider creating a junction object so you can display the referenced objects in a related list.
  • If you have references that are only used in validation rules, rewrite those rules as an Apex trigger.
  • If any of the references are used by only one component, convert that to a trigger.
  • If you are spanning multiple levels of a hierarchy such as parent accounts, cases, or a hierarchy of custom objects, see if it’s possible to flatten the hierarchy.

https://success.salesforce.com/ideaView?id=08730000000hDO6AAM

Another product manager response that is good https://success.salesforce.com/ideaView?id=08730000000gKsbAAE

Be Aware! Appexchange Apps will also use up your limits! https://success.salesforce.com/answers?id=90630000000goLqAAI