1. A method for generating a personalized layout of content, implemented on a machine having at least one processor, storage, and a communication platform connected to a network, comprising: monitoring web browsing activities of a user in a web browsing session, via the communication platform; determining a view distribution for the user based on the monitored activities of the user with respect to each portion of each of a plurality of web pages viewed by the user within the web browsing session, wherein the view distribution comprises a list of numbers each of which represents a number of times the user viewed a respective portion of the plurality of web pages; adaptively assigning the user to a user group from a plurality of user groups based on the view distribution, the adaptive assignment including detecting a change in the user's web browsing activities and reassigning the user to a different user group; selecting a layout template for the user based on the user group assignment, wherein the layout template specifies a layout of content and is selected such that space on the layout template prioritizes a web page portion that received most views per the view distribution, and wherein the prioritization includes allocating more space for content provided at the web page portion; arranging a plurality of pieces of content according to the layout template; providing the arranged plurality of pieces of content to the user, wherein the arranging is based on the user group assignment; determining statistics associated with a plurality of users in the user group to which the user is assigned; updating a record associated with a content provider in connection with the layout template based on the statistics; and receiving a payment made in association with the layout template and computed based on the record.