It is always difficult to judge how much to cook for a family gathering. If you are cooking steaks and potatoes, you can figure on 8-12 ounces per person unless you have a big steak eater who likes 16 ounce steaks. However, with a holiday feast, you tend to have multiple salads, side dishes and desserts. Thus, meat is often served in smaller portions 3-6 ounces. That is likely why you ended up with leftovers last year.
When you purchase a standing rib roast (aka prime rib), the purchase includes the weight of the bone and fat. That represents about 15% of the overall weight of the roast. If you are cooking for 8 and want to allow 8 ounces per person, you will need 64 ounces of meat (4 pounds). However, to get that amount of meat, you will need about 5 pounds of roast. That would be a 3-bone roast. However, if you are cutting the roast into steaks rather than slices, you will need more. Based on your experience last year, you might want to consider a 4 bone roast. That should allow a little more than 8 ounces of meat for hungry guests and still allow for some leftovers for prime rib sandwiches.
My wife's greatest fear is running short of food for any occasion. Thus, always cook more than you expect to consume. There were only two of us for Thanksgiving, but I cooked a 13 pound turkey. We had lots of leftovers. the breast was used for meals and sandwiches and the remainder went into a large pot of stew that was frozen into portions that will provide hearty meals this winter.