1. A method of identifying related items, comprising: monitoring actions performed on a plurality of items by a plurality of users across a plurality of websites; selecting from the plurality of items, a target item; selecting, from the plurality of items, a candidate affinity item; determining whether the candidate affinity item is related to the target item using the following analysis: calculating, from the plurality of users, across a plurality of websites: a first amount, representing how many users viewed the target item and the candidate affinity item in the same browsing session; a second amount, representing how many users viewed the target item and bought the candidate affinity item in the same browsing session; a third amount, representing how many users bought the target item and the candidate affinity item in different browsing sessions; and a fourth amount, representing how many users did not buy the target item after adding it to their shopping cart but did buy the candidate affinity item in the same browsing session; receiving, for each of the four amounts, a corresponding weighting factor; calculating a recommendation score by summing the product of each amount with its corresponding weighting factor; determining that the candidate affinity item is related to the target item based on the recommendation score; and displaying the target item and candidate affinity item together on a webpage as related items, wherein the above steps are performed by a computer processor.