1. A method, implemented on a machine having at least one processor, storage, and a communication platform connected to a network for generating personalized content layout, comprising the steps of: monitoring a user's web browsing activities, via the communication platform; assigning a user to a user group based on the monitored activities; selecting a layout template for the user based on the user group assignment; arranging a plurality of pieces of content according to the layout template; and displaying the arranged plurality of pieces of content to the user.