The simple answer is anybody who comes to the marriage with something to protect when the marriage terminates should have a premarital agreement when they get married. The general categories of people who can benefit are people with children from a prior relationship, significant family assets, or people who own a business which comprises a major source of income.
If there are children from a prior relationship, they may not inherit when their parent dies without a premarital agreement. The laws of inheritance give preference to a surviving spouse. Even if a will exists, the law still gives preference to a spouse. The best way to make sure that children can inherit is to write a prenuptial agreement. When one spouse owns a business or a portion of the business in which they receive significant income, it may be desirable to make certain that the new spouse can’t receive a portion of the business in a divorce. It can be devastating to the business to have a person own a business when they are not qualified to run the business. It can also be very difficult for one spouse to suddenly work for an ex-spouse.
Another group of people who should have a premarital agreement are people who are religious and whose religion offers a religious termination of a marriage. Catholics, Muslims, and Jews can all obtain a religious decision that a marriage is terminated or never existed. Some people will want both a secular divorce and a religious divorce or annulment. Anyone in this group can benefit from a premarital agreement because an agreement can make a religious termination occur without a fight and at minimal cost.