WO2024233982A1 - Method and apparatus for filtered heat mapping of user website interaction - Google Patents

Method and apparatus for filtered heat mapping of user website interaction Download PDF

Info

Publication number
WO2024233982A1
WO2024233982A1 PCT/US2024/028980 US2024028980W WO2024233982A1 WO 2024233982 A1 WO2024233982 A1 WO 2024233982A1 US 2024028980 W US2024028980 W US 2024028980W WO 2024233982 A1 WO2024233982 A1 WO 2024233982A1
Authority
WO
WIPO (PCT)
Prior art keywords
processor
selection
memory
executed
webpage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
PCT/US2024/028980
Other languages
English (en)
French (fr)
Inventor
Dylan Pierce PIERCE
Kenn PALM
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of WO2024233982A1 publication Critical patent/WO2024233982A1/en
Anticipated expiration legal-status Critical
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0242Determining effectiveness of advertisements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Definitions

  • Heat maps may be applied to a wide variety of data and in a wide variety of applications.
  • it is important to understand how a user interacts with a website. This is important so that a website manager is empowered with information to improve performance of the websites.
  • heat maps have been used to represent various aspects of a user’s interaction vis-a-vis a webpage.
  • Various colors are overlaid onto a webpage where different colors represent a wide variety of factors, parameters, and user behaviors.
  • the intensity or hue of a color represents varying degrees of intensity for such factors, parameters and user behaviors.
  • a user When a user opens a web browser on their device, the user is typically required to enter a “uniform resource locator”, commonly referred to as a URL.
  • a URL a “uniform resource locator”
  • the web browser accesses a server according to the URL entered by a user and retrieves a webpage definition.
  • the web browser interprets the webpage definition, in the form of HTML code, and presents images to a user on a display screen.
  • the manager of the webpage When the manager of the webpage is presented with a heat map, then the manager may decide to alter the appearance of the webpage, which may include adjusting code-defined screen elements. It is important to realize that a webpage is often subject to views by thousands of people, each of which is interacting with a particular webpage. It is often the case that, as more and more people interact with a particular webpage, the heat map presented to the webpage manager may become overwhelming. When the heat map presents more information than the webpage manager needs to properly alter the appearance of the webpage, the efficacy of the entire process is diminished.
  • Fig. 1 is a flow diagram that depicts one example method for reporting a user interacts with a website
  • Fig. 2 is a flow diagram that depicts one alternative example method for heat mapping interactions with at least one or more of a webpage and/or a website;
  • Figs. 3A through 3C are flow diagrams that depicts various alternative example methods for perceiving a general metric
  • Fig. 4 is a flow diagram that depicts various alternative example methods for tracking revenue metrics
  • Fig. 5 is a flow diagram that depicts one alternative example method for identifying a code-defined screen element on a webpage
  • Fig. 6 is a flow diagram that depicts one alternative example method which provides for receiving an arbitrary pixel region on a webpage
  • Fig. 7 is a flow diagram that depicts one example alternative method for receiving an arbitrary pixel selection
  • Fig. 8 is a flow diagram that depicts yet another alternative method for receiving an arbitrary pixel selection based on multiple selection points
  • Fig. 9 is a flow diagram that depicts alternative example methods for selecting an arbitrary pixel region on a website
  • Fig. 10 is a flow diagram that depicts an alternative method for correlating a general metric with a revenue metric
  • Fig. 11 is a flow diagram that depicts yet another alternative example method wherein reports are provided based on identified metrics
  • Fig. 12 is a system diagram that depicts various configurations of a system for recording the interaction of a user with a website
  • Fig. 13 is a message diagram that depicts various interactions between the heat map server, the management server and the management device as these system elements interact with a client device and a Web server;
  • Figs. 14 and 15 comprise, respectively, a block diagram of a management device and a dataflow diagram that describes the operation of a processor included in the management device as it executes various functional modules stored in a memory included in the management device;
  • Figs. 16 and 17 comprise, respectively, a block diagram of a heat mapping server and a dataflow diagram that describes the operation of a processor included in the heat mapping server as it executes various functional modules stored in a memory included therein;
  • Figs. 18 and 19 comprise, respectively, a block diagram of a management server and a dataflow diagram that describes the operation of a processor included in the management server as it executes various functional modules stored in a memory included therein.
  • method steps are interchangeable and specific sequences may be varied according to various alternatives contemplated. Accordingly, the claims are to be construed within such structure.
  • method steps that include the phrase “.. .comprises at least one or more of A, B, and/or C. . .” means that the method step is to include every combination and permutation of the enumerated elements such as “only A”, “only B”, “only C”, “A and B, but not C”, “B and C, but not A”, “A and C, but not B”, and “A and “B” and C”.
  • Fig. 1 is a flow diagram that depicts one example method for reporting a user interacts with a website.
  • This example method comprises a step for identifying a website (step 5), tracking interactions with the website (step 10), tracking general metrics of the website (step 15), tracking revenue metrics of the website (step 20), receiving an arbitrary pixel region selection for the website (step 25), correlating general metrics with the revenue metrics within the selected region (step 30) and generating a correlation report (step 35).
  • the website In order to track interactions with a particular website, such website must first be identified. This is typically accomplished when the publisher of the website specifically submits the website to a tracking server, which is also referred to herein as a “heat mapping” server. In one alternative example method, this is accomplished by conveying to the heat mapping server a universal resource locator, commonly referred to as a “URL”. It should likewise be appreciated that, according to variations of the present method, the website comprises one or more webpages, wherein each such webpage is likewise identified by a URL which is conveyed to the heat mapping server.
  • Such interactions include, but are not necessarily limited to mouse scrolls, mouse clicks, mouse movements, and the like. Such interactions are described in greater detail below. In the interest of brevity, many of such interactions will be described as general metrics.
  • Fig. 2 is a flow diagram that depicts one alternative example method for heat mapping interactions with at least one or more of a webpage and/or a website.
  • a webpage which is understood to be a constituent of a website, is a definition written in a high-level language, which in many cases comprises a language called “hypertext markup language” commonly referred to as “HTML”.
  • HTML provides various statements that are interpreted by a special program on a client device called a web browser. When the web browser retrieves an HTML definition of a webpage, it renders an image on a client-user’s screen according to the HTML definition for that webpage.
  • HTML also provides capabilities for an embedded code snippet.
  • This type of embedded code snippet is also interpreted by the web browser, and enables the web browser to execute the code snippet as computer code capable of interacting with the client-device that is executing the web browser. This means that the code snippet, one executed by the web browser, allows the web browser to access client-device hardware including, but not limited to disk storage facilities, keyboard entries, and mouse activity.
  • heat mapping and interaction with at least one or more of a website and/or a webpage comprises installing a code snippet in a webpage definition (step 40).
  • this code snippet is installed and made part of the HTML definition for a webpage that is stored on a website server.
  • This alternative example method also comprises a step for executing the code snippet in order to detect a general metric (step 45).
  • these general metrics will include general user interactions such as mouse movements and keyboard entries. This enumeration of general metrics is not intended to limit the scope of the claims appended hereto.
  • This alternative example method also comprises a step for executing the code snippet to detect a revenue metric (step 50).
  • Revenue metrics include, but are not limited to button clicks associated with a purchase, button clicks associated with adding an item to a shopping cart and the like.
  • a user interaction step 55.
  • Figs. 3A through 3C are flow diagrams that depicts various alternative example methods for perceiving a general metric.
  • a general metric includes a user interaction.
  • perceiving a user interaction comprises perceiving an entry page (step 70).
  • Perceiving of an entry page comprises detecting a URL for a page that a client-user was viewing just prior to entering a webpage subject to tracking as described herein.
  • perceiving a user interaction comprises perceiving and exit page (step 75). This comprises detecting a URL for a page displayed to a client-user after the client-user as left the webpage subject to tracking.
  • the code snippet installed in the HTML definition of a webpage is executed by the web browser and causes the processor executing the web browser to collect this information and convey it to a heat mapping server by way of a wide area network.
  • perceiving a user interaction comprises at least one or more of determining the time on page (step 80) and/or the time on site (step 85).
  • the code snippet when executed by the web browser, causes the processor executing the web browser to start a timer in order to determine at least one or more of a time on page (step 80) and/or time on site (step 85).
  • This information is valuable to a website manager in determining the efficacy of a webpage and retaining the attention of a client-user.
  • a step is included for identifying when a visitor is a new visitor to a website (step 90). Accordingly, a new visitor Boolean (step 90) is conveyed to a heat mapping server when the web browser executes the code snippet.
  • one alternative example method comprises steps for detecting at least one or more of screen dimensions (step 110), a device type (step 115), the amount of memory in the client-device (step 120), the browser type (step 125), the version of the browser (step 130), an enumeration of installed plug-ins (step 135) and/or an enumeration of cookies installed on the device (step 140).
  • step 110 a device type
  • step 120 the amount of memory in the client-device
  • the browser type step 125
  • the version of the browser step 130
  • an enumeration of installed plug-ins step 135)
  • an enumeration of cookies installed on the device step 140
  • the installed code snippet one executed by the web browser on the user’s client device, causes the processor and that client device to retrieve these parameters and dispatch these parameters to a heat mapping server by way of a wide area network.
  • Fig. 4 is a flow diagram that depicts various alternative example methods for tracking revenue metrics.
  • tracking a revenue metric comprises tracking a user form completion (step 145).
  • the code snippet is configured to cause the web browser to recognize when the user fills out a form.
  • the web browser when executing the code snippet, causes the processor in the client-user’s device to dispatch to the heat mapping server by way of a wide area network this revenue tracking metric.
  • tracking a revenue metric comprises tracking a user purchase (step 150).
  • the code snippet utilized in this alternative example method is configured to cause the web browser to recognize when a user purchase is made and to cause the processor in the client-user’s device to dispatch to the heat mapping server by way of a wide area network this revenue tracking metric.
  • Fig. 4 also depicts an alternative example method wherein tracking a revenue metric comprises tracking a revenue event (step 155).
  • tracking a revenue metric comprises tracking a revenue event (step 155). This, according to this alternative method, occurs when a user completes a purchase and the revenue amount is determined by the browser as it executes the code snippet. The browser, as it continues to execute the code snippet, causes the processor in the client-user’s device to dispatch to the heat mapping server by way of a wide area network this revenue tracking metric.
  • this alternative example method includes steps for tracking at least one or more of the product purchased (step 145) and the products that is added to the cart (step 170).
  • the browser by executing the code snippet, causes the processor in the client-user’s device to dispatch to the heat mapping server by way of a wide area network this revenue tracking metric.
  • the new method and variations thereof are, in one form, embodied in a system that includes a management server 901 and a heat mapping server 1001.
  • the system also includes a code snippet 740, which is integrated with a page definition 735.
  • the code snippet 740 is integrated with the webpage definition 735, the webpage definition 735 and the website server 701 that provides the page definition to client-device 450 are not part of the system per se.
  • the code snippet 740 which is included in one alternative embodiment, is integrated into the page definition 735 by the website manager.
  • a management device 500 interacts with the website server 701, the management server 901, and the heat map server 1001 by means of a wide area network 400.
  • Fig. 5 is a flow diagram that depicts one alternative example method for identifying a code-defined screen element on a webpage.
  • This alternative example method includes a step for receiving a selection of one or more code-defined screen elements (step 180) and identifying pixels associated with a selected code-defined screen element (step 185).
  • One alternative example embodiment of a system that operates according to the techniques and teachings of the present method includes a functional module stored in the memory of the management device 501 that, when executed by the processor included in the management device 501, minimally causes that processor to retrieve into its memory a webpage definition from the website server 701. This functional module further minimally causes the processor to parse the webpage definition in order to identify code-defined screen elements.
  • Once a code identified screen element is identified, its location in a rendered image is stored in a database as an identification of pixels associated therewith. This will explained further with reference to the claims associated with a system that operates according to the techniques and teachings of the present method.
  • Fig. 6 is a flow diagram that depicts one alternative example method which provides for receiving an arbitrary pixel region on a webpage.
  • This alternative example method includes a step for retrieving into a memory (step 190) by way of a network interface a webpage from a website server 701. It should likewise be appreciated, as will be further discussed below, that this process operates in a management device 501.
  • a system that operates according to the techniques and teachings of the present method includes a functional module stored in the memory of the management device 501 that, when executed by the processor in the management device 501 minimally causes that processor to retrieve into the memory the webpage from the website server 701.
  • This alternative example method further includes a step for rendering into an element pixel plane one or more code-defined elements (step 200). This is again accomplished by the processor in the management device 501 as that processor continues to execute the functional module stored in its memory. An image is then rendered (step 205) to a display screen included in the management device 501. It should be appreciated that this functional step is accomplished by the processor in the management device 501 as it executes a web browser stored in its memory.
  • this alternative example method also includes a step for identifying pixels that overlap on the display screen included in the management device 501, one or more pixel selections are received based on the rendered image (step 210) and yet an additional included step of this alternative example method.
  • pixel selections are received by the processor as a management user uses a cursor position selection device (“CPSD”), e.g. a mouse or trackball.
  • CPSD cursor position selection device
  • an additional included step provides for marking the pixels in a selection plane (step 215). Again, these method steps are accomplished by a processor included in the management device 501 as it executes various functional modules that are included in a system that implements the techniques and teachings of the present method and its variations.
  • This alternative example method also includes a step for identifying pixels overlapping in the element plane and the selection plane (step 220) and recording the overlapping pixels in a database (step 225). Again, these method steps are accomplished by a processor included in the management device 501. It should likewise be appreciated that this alternative example method provides for receiving an arbitrary pixel selection as it may pertain to a webpage retrieved by the management device 501 from the website server 701. Recording the overlapping pixels in a database is accomplished by sending a “filtering record” by way of a wide area network to the management server 901.
  • Fig. 7 is a flow diagram that depicts one example alternative method for receiving an arbitrary pixel selection.
  • a web manager When a web manager is using the management device 501, a web browser executed by a processor in said management device 501 presents an image on a display screen.
  • this alternative example method provides an included step for receiving a series of selection points on the display screen of the website (step 230). A region is then established based on the selection points (step 235), as provided for in an additional included step. An additional included step provides for identifying a portion of a code-defined screen element within the region (step 240).
  • a processor in the management device as it executes a particular function included in its memory, will identify pixels that overlap in an element plane and a selection plane as a portion of a code-defined screen element within the region selected by the management user while using the management device 501.
  • Fig. 8 is a flow diagram that depicts yet another alternative method for receiving an arbitrary pixel selection based on multiple selection points.
  • a first included step provides for receiving a first selection point on a screen displaying the website (step 245).
  • the website as retrieved from the website server 701 is presented to a management user as the processor in the management device 501 executes a web browser. The user then enters additional selection points.
  • an additional included step provides for receiving a subsequent selection point (step 250).
  • an additional included step provides for establishing a region based on the collected selection points (step 260).
  • an additional included step provides for identifying a portion of code- defined screen elements within the region (step 265).
  • a processor in the management device 501 is responsible for executing these steps.
  • Fig. 9 is a flow diagram that depicts alternative example methods for selecting an arbitrary pixel region on a website. It should be appreciated that, according to this alternative example method, a selection of an arbitrary pixel region is accomplished using one or more of various steps including receiving a polygon selection (step 270), receiving a rectangle selection (step 275), receiving a circle selection (step 280) and/or receiving an ellipse selection (step 285). These are but some example means by which an alternative example method for selecting an arbitrary pixel region on a website may be accomplished and the examples herein described are not intended to limit the scope of the claims appended hereto.
  • Fig. 10 is a flow diagram that depicts an alternative method for correlating a general metric with a revenue metric.
  • This alternative example method at least one or more of a general metric (step 300) and/or a revenue metric (step 305) are received by way of a wide area network in a heat mapping server.
  • An additional included step provides for retrieving a record identifying a pixel region corresponding to code-defined screen element.
  • the pixel region corresponds to a portion of a code-defined screen element.
  • a general metric and/or a revenue metric are collectively referred to as user interactions. If a user interaction is within the identified pixel region (step 290), then a record of the correlation is stored in a database (step 295) in an additional step included in this alternative example method.
  • Fig. 11 is a flow diagram that depicts yet another alternative example method wherein reports are provided based on identified metrics.
  • a heat mapping server continues to operate, it will record various types of metrics as it stores user interactions in a database.
  • a metric in one illustrative use case, comprises total revenue for a particular website visit.
  • a metric comprises the time spent by a user on a particular website.
  • metrics there are wide varieties of metrics that are collected by systems that implement the teachings and techniques of the present method and variations thereof. It should be noted that any examples of different types of metrics are not intended to limit the scope of the claims appended hereto.
  • This alternative example method comprises a step for receiving in a heat mapping server a set of one or more metric identifiers (step 315).
  • a correlation report is then generated based on the set of metric identifiers (step 320).
  • the correlation report is then sent to a management device 501 and is integrated with the display of a particular website.
  • Fig. 12 is a system diagram that depicts various configurations of a system for recording the interaction of a user with a website.
  • a system includes hardware elements and functional software elements.
  • one example embodiment of the system comprises a code snippet 740, which is embedded in a webpage definition 735.
  • This example embodiment further comprises a heat mapping server 1001.
  • Control of the system is accomplished by a management user as the management user interacts with a management device 501.
  • management device 501 is included in the system.
  • the management device 501 is not included in system, however functional modules, which are included in the system, are stored in a memory included in the management device 501.
  • the management device 501 is communicatively coupled 410 to the wide area network 400.
  • the management device 501 is able to communicate with the heat mapping server 1001.
  • the system further includes a management server 901, and which is also communicatively coupled 420 to the wide area network 400.
  • the functional processes (and their corresponding instruction sequences) described herein enable monitoring the interaction of a user with a web page in accordance with the techniques, processes and other teachings of the present method.
  • these functional processes are imparted onto computer-accessible medium.
  • Examples of such medium include, but are not limited to, random access memory, read-only memory (ROM), Compact Disk (CD ROM), Digital Versatile Disks (DVD), floppy disks, flash memory, and magnetic tape.
  • This computer-accessible medium which alone or in combination can constitute a standalone product, can be used to convert a general or special purpose computing platform into an apparatus capable of supporting heat mapping according to the techniques, processes, methods and teachings presented herein.
  • a computer-accessible medium may include any tangible or non-transitory storage media or memory media such as electronic, magnetic, or optical media — e.g., disk or CD/DVD-ROM coupled to computer system via a bus.
  • tangible and non-transitory are intended to describe a computer-readable storage medium (or “memory”) excluding propagating electromagnetic signals, but are not intended to otherwise limit the type of physical computer-readable storage device that is encompassed by the phrase computer-readable medium or memory.
  • non-transitory computer-readable medium or “tangible memory” are intended to encompass types of storage devices that do not necessarily store information permanently, including for example, random access memory (RAM).
  • Program instructions and data stored on a tangible computer accessible storage medium in non-transitory form may further be transmitted by transmission media or signals such as electrical, electromagnetic, or digital signals, which may be conveyed via a communication medium such as a network and/or a wireless link.
  • aspects of the method and system described herein, such as the logic may also be implemented as functionality programmed into any of a variety of circuitry, including programmable logic devices (“PLDs”), such as field programmable gate arrays (“FPGAs”), programmable array logic (“PAL”) devices, electrically programmable logic and memory devices and standard cell-based devices, as well as application specific integrated circuits.
  • PLDs programmable logic devices
  • FPGAs field programmable gate arrays
  • PAL programmable array logic
  • Some other possibilities for implementing aspects include: memory devices, microcontrollers with memory (such as EEPROM), embedded microprocessors, firmware, software, etc.
  • aspects may be embodied in microprocessors having software-based circuit emulation, discrete logic (sequential and combinatorial), custom devices, fuzzy (neural) logic, quantum devices, and hybrids of any of the above device types.
  • Fig. 13 is a message diagram that depicts various interactions between the heat map server, the management server and the management device as these system elements interact with a client device and a Web server.
  • the management device 501 comprises a device that allows a website manager to load webpages onto the Web server 701.
  • another illustrative use case provides that the management device 501 receives a URL 444 from a website manager.
  • This URL 444 is input into a web browser that is executing on the management device 501. That web browser, one executed by a processor included in the management device 501, minimally causes that processor to retrieve a webpage by conveying 455 a URL request to the Web server 701 which is used to host a website.
  • the Web server 701 returns an HTML representation 462 of the webpage pointed to by the URL.
  • the website manager using the management device 501, will select a portion of the screen once the HTML is rendered onto a display device included in the management device 501.
  • the management device will append a code snippet to the HTML representation of the website and load this back 467 onto the Web server 701.
  • Various screen selections are also sent 561 to the management server 901.
  • the management server then stores these onto a shared database 695. These screen selections are stored as individual parameter records 941, which are included in a parameter record table 940 as described below.
  • a processor included in the client device 450 causes the client device to send a URL request to the Web server 701.
  • the Web server 701 returns HTML code that also includes the code snippet.
  • the code snippet when executed by the processor in the client device 450, allows the processor to report user interactions back to the heat map server 1001. It should be appreciated that this cursory description is intended to help illustrate how the present method and system interact according to one or more illustrative use cases and are not intended to limit the scope of the claims appended hereto.
  • Figs. 14 and 15 comprise, respectively, a block diagram of a management device and a dataflow diagram that describes the operation of a processor included in the management device as it executes various functional modules stored in a memory included in the management device.
  • the various functional modules described herein are structured as “plug-ins” or “extensions” to a browser 545, which is included in this embodiment and stored in the memory 505.
  • the management device 501 includes a processor 500, a network interface 515, an internal bus 510, and a memory 505. Also included in this example embodiment is a graphics unit 520, which is communicatively coupled to a graphics memory 525 and werein the graphics unit 520 and the graphics memory 525 provide a capability to present information on a display 522. It should be appreciated that, according to various alternative embodiments, the display 522 is external to the management device 501. However, other alternative embodiments include a display 522 that is integral to the management device 501. This example embodiment of a management device 501 also includes a “cursor position selection device” (“CPSD”) interface 530.
  • CPSD cursor position selection device
  • the cursor position selection device 533 which is included in some alternative embodiments, interfaces with a CPSD in order to receive cursor movement directives and selection directives from a user.
  • the management device 501 also includes a keyboard interface 532, which enables interface to a keyboard 534. It should be appreciated that the keyboard facilitates entry of URL addresses, which are used by the web browser 545 to retrieve a webpage from a Web server.
  • the processor 500 is communicatively coupled to a memory 505 by means of an internal bus 510. It should also be appreciated that, according to this example embodiment, the processor 500 is also communicatively coupled by the internal bus 510 to the graphics unit 520 (and its integral graphics memory 525), the CPSD interface 530 and the keyboard interface 532.
  • the memory 505 includes stored therein several functional modules including a protocol stack 540, a web browser 545, and a report module 547. In various alternative example embodiments, functional modules comprise at least one or more of a plug-in and/or a browser extension.
  • Fig. 14 also illustrates the various portions of the memory 505 are used to store data including a webpage 565, an element plane 570, and a selection plane 575.
  • Fig. 15 illustrates that, according to this alternative example embodiment, the processor 500, as it executes the protocol stack 540, is minimally caused to receive into the memory a webpage definition, which is stored in a webpage buffer 565.
  • this alternative example embodiment also includes a web browser 545.
  • the web browser 545 when executed by the processor, minimally causes the processor to retrieve a webpage definition from the webpage buffer 565 and render the webpage to a display 522 by sending commands to the graphics unit 520. It should be appreciated that the graphics unit 520 renders an image into the display memory 525, which is then used to drive the display 522.
  • the processor 500 executes the report module 547.
  • the report module 547 when executed by the processor 500, minimally causes the processor 500 to retrieve from a database a correlation and overlay the correlation onto an image generated in the display memory 525 by the browser 545. It should be appreciated that, in this example alternative embodiment, the report module 547 overlays an image onto a webpage by directing commands to the graphics unit 520. The graphics unit 520, in turn, creates the overlay and stores it in the display memory 525.
  • Figs. 14 and 15 also illustrate that, according to yet another alternative example embodiment, the memory 505 included in the management device 501 includes a region select module 580.
  • the region select module 580 when executed by the processor 500, minimally causes the processor 500 to receive from a user a selection of points associated with an image displayed by the browser.
  • the region select module 580 causes the processor 500 to receive inputs from a graphical user input module 582, which is also included as a functional module stored in the memory 505.
  • the inputs received from the graphical user input module 582 comprise at least one or more of a cursor movement indicator and/or a selection indicator.
  • the region select module 580 when executed by the processor 500, further minimally causes the processor 500 to identify pixels in a selection plane 575, which is a portion of the memory 505, according to one or more of said cursor movement indicators.
  • the pixels identified in the selection plane 575 comprise arbitrary pixels as identified by a management user.
  • a user moves the cursor using the CSPD 522 and selects points on the display 522 in order to select an arbitrary region on a webpage displayed to a user of the management device 501.
  • This alternative example embodiment also includes a code element identifier module 550, which is stored in the memory 505.
  • the code identifier module 550 when executed by the processor 500, minimally causes the processor to identify a code- defined screen elements included in an HTML description stored in the webpage buffer 565.
  • the processor 500 then executes a render functional module 555 in order to identify particular pixels in an element plane 570, which is stored in the memory 505, and which corresponds to code-defined screen elements identified by the processor 500 as it executes the code element identifier module 550.
  • Fig. 15 also illustrates that, according to one alternative example embodiment, the memory 505 included in the management device 501 includes a transfer module 560.
  • the transfer module 560 when executed by the processor 500, minimally causes the processor 500 to identify pixels that are active in both the element plane 570 and the selection plane 575 and to communicate these 561 to the management server by way of the network interface 515.
  • the processor 500 executes the protocol stack 540. As shown in Fig. 18 introduced below, these active pixels are stored in a parameter table 940, which associates a particular URL 950 with a particular parameter 945. This is discussed further below.
  • parameter table 940 is also stored in a shared database 695, which, in this example embodiment, is accessible by the management server 901 and the heat map server 1001.
  • transfer module 560 when executed by the processor 500, further minimally causes the processor to paint the overlapping active pixels to the graphics unit in order to display which parameters have been defined by a management user.
  • the region select module 580 included in the management device 501 when executed by the processor 500, minimally causes the processor to receive from a user and arbitrary pixel region associated with the webpage displayed on the display 522. This arbitrary pixel region is then stored as a selection in a selection plane 575.
  • the region select module 580 included in the management device 501 when executed by the processor 500, minimally causes the processor 500 executes a graphical user interface module 582 in order to receive a series of selection points associated with an image displayed by the browser 545 and wherein the management device 501 further includes a transfer module 560, which is stored in the memory 505.
  • the transfer module 560 when executed by the processor 500, minimally causes the processor to convey to the management server by way of the network interface 515 this selection of points is a definition of an arbitrary pixel region in association with webpage.
  • the region select module 580 included in the management device 501 when executed by the processor 500, minimally causes the processor 500 to execute a graphical user interface module 582 in order to receive a series of selections associated with an image displayed by the browser 545 and wherein the management device 501 further includes a transfer module 560, which is stored in the memory 505.
  • the transfer module 560 when executed by the processor 500, minimally causes the processor to convey to the management server by way of the network interface 515 the shape selections as a definition of an arbitrary pixel region in association with webpage.
  • shape selections comprise at least one or more of a polygon selection, a rectangle selection, and/or ellipse selection.
  • Figs. 16 and 17 comprise, respectively, a block diagram of a heat mapping server and a dataflow diagram that describes the operation of a processor included in the heat mapping server as it executes various functional modules stored in a memory included therein.
  • a heat mapping server 1001 includes a processor 1000, a network interface 1015, a database interface 1012, a memory 1005, and various functional modules, which are stored in the memory 1005. It should be appreciated that, the aforementioned elements are communicatively coupled to the processor 1000 by means of an internal bus 1010.
  • functional modules included in the heat mapping server 1001 and stored in the memory therein 1005 include a protocol stack 1020, a report parser 1035 and a correlator 1030.
  • the protocol stack 1020 when executed by the processor 1000, minimally causes the processor 1000 to communicate by way of the network interface 1015 to a wide area network 425.
  • the report parser 1035 it receives reports of user interactions from a client device, which are transmitted by a code-snippet included in an HTML representation of a webpage. It should be appreciated that this code-snippet is executed by a processor and a client device 450.
  • each such report comprises a webpage identifier (e.g. a URL) and at least one or more of a general metric and/or a revenue metric.
  • the report parser 1035 As shown in Fig 17, the report parser 1035, as it is further executed by the processor 1000, further minimally causes the processor 1000 to extract the webpage identifier and directed to a pixel lookup module 1025.
  • the pixel lookup module 1025 when executed by the processor 1000, minimally causes the processor 1000 to retrieve a parameter record 941 from a shared database 695 by way of a database interface 1012.
  • the pixel lookup module 1025 as it is further executed by the processor 1000, populates an active pixel plane 1055, which is stored in the memory 1005.
  • the report parser 1035 further minimally causes the processor 1000 to create one or more parameter activity planes 1050 in the memory 1005. Based on a particular user interaction report, the report parser 1035 further minimally causes the processor 1000 to activate particular pixels in the parameter activity plane 1050 for a particular parameter.
  • parameters correlate to different types of user activities as described herein.
  • different parameters, and accordingly different parameter activity planes 1050 are created for different general and/or revenue metrics received from the client device 450, and which are sent to the heat mapping server when the processor included in the client device executes the code snippet appended to the HTML page description.
  • these include, as identified here, at least one or more of an entry page, an exit page, time on page, time on site, a new visitor flag, a mouse scroll depth, a specific element click, a click in an arbitrary pixel region, dimensions of a client user screen, the type of client device, the amount of memory in the client device, the type of browser being used in the client device, the version of the browser being used in the client device, plug-ins installed on the client device, a list of cookies stored in the client device, a user form completion report, a user purchase report, a revenue event, an average order value, a product purchased and/or adding a product to a purchase card. All of these have corresponding parameter activity planes.
  • the processor 1000 included in the heat mapping server 1001 continues to operate, it executes the correlator module 1030.
  • the correlator module 1030 when executed by the processor 1000, minimally causes the processor 1002 identify pixels in the pixels in the active pixel plane 1055 that are also active in the one or more parameter activity planes 1050. When corresponding pixels are both active, these pixels are also activated in the one or more parameter correlation planes 1060.
  • the correlator 1030 causes the resulting parameter correlation planes 1060 to be stored in a shared database 695 by way of the database interface 1012.
  • Figs. 18 and 19 comprise, respectively, a block diagram of a management server and a dataflow diagram that describes the operation of a processor included in the management server as it executes various functional modules stored in a memory included therein.
  • some embodiments of the system described herein include a management server 901.
  • the management server 901 includes a processor 900, a network interface 915, a database interface 912 and a memory 905.
  • the processor 900 is communicatively coupled to these other elements by way of an internal bus 910.
  • the management server 901 includes several functional modules that are stored in the memory including a protocol stack 920 and a parameter manager 930.
  • the memory 95 is also used to manage a parameter table 940.
  • the parameter table 940 includes one or more parameter records 941.
  • Each parameter record 941 includes a parameter identifier 945, a URL 950 and an arbitrary pixel region 955.
  • the arbitrary pixel region 955 is defined using at least one or more of a series of points associated with a rendered webpage, a polygon selection, a rectangle selection, and/or ellipse selection. It should be appreciated that any such arbitrary pixel region is defined by a user when using a management device 501.
  • the processor 900 included in the management server 901 executes the protocol stack 920 stored in its memory 905 in order to minimally receive parameter records 941 into its memory.
  • the processor 900 also executes the parameter manager 930, which, when executed by the processor 900, minimally causes the processor 900 organize individual parameter records 941 into a parameter table 940 and store the parameter table 940 in a shared database 695, which the processor 900 accesses by way of a database interface 912.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Computer Hardware Design (AREA)
  • General Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)
PCT/US2024/028980 2023-05-11 2024-05-10 Method and apparatus for filtered heat mapping of user website interaction Pending WO2024233982A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202363465597P 2023-05-11 2023-05-11
US63/465,597 2023-05-11

Publications (1)

Publication Number Publication Date
WO2024233982A1 true WO2024233982A1 (en) 2024-11-14

Family

ID=93431184

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2024/028980 Pending WO2024233982A1 (en) 2023-05-11 2024-05-10 Method and apparatus for filtered heat mapping of user website interaction

Country Status (1)

Country Link
WO (1) WO2024233982A1 (enrdf_load_html_response)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120151329A1 (en) * 2010-03-30 2012-06-14 Tealeaf Technology, Inc. On-page manipulation and real-time replacement of content
US11102316B1 (en) * 2018-03-21 2021-08-24 Justin Khoo System and method for tracking interactions in an email
US20210297739A1 (en) * 2017-01-03 2021-09-23 Bliss Point Media, Inc. Optimization of broadcast event effectiveness
US20220300598A1 (en) * 2018-01-19 2022-09-22 SunStone Information Defense, Inc. Methods and apparatus for interfering with automated bots using a graphical pointer and page display elements
US20220335720A1 (en) * 2014-02-28 2022-10-20 Genius Sports Ss, Llc Data processing systems and methods for generating interactive user interfaces and interactive game systems based on spatiotemporal analysis of video content
US20220385731A2 (en) * 2021-01-06 2022-12-01 Shopify Inc. Code monitoring to recommend alternative applications

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120151329A1 (en) * 2010-03-30 2012-06-14 Tealeaf Technology, Inc. On-page manipulation and real-time replacement of content
US20220335720A1 (en) * 2014-02-28 2022-10-20 Genius Sports Ss, Llc Data processing systems and methods for generating interactive user interfaces and interactive game systems based on spatiotemporal analysis of video content
US20210297739A1 (en) * 2017-01-03 2021-09-23 Bliss Point Media, Inc. Optimization of broadcast event effectiveness
US20220300598A1 (en) * 2018-01-19 2022-09-22 SunStone Information Defense, Inc. Methods and apparatus for interfering with automated bots using a graphical pointer and page display elements
US11102316B1 (en) * 2018-03-21 2021-08-24 Justin Khoo System and method for tracking interactions in an email
US20220385731A2 (en) * 2021-01-06 2022-12-01 Shopify Inc. Code monitoring to recommend alternative applications

Similar Documents

Publication Publication Date Title
US20100295774A1 (en) Method for Automatic Mapping of Eye Tracker Data to Hypermedia Content
US9805377B2 (en) Unified content visibility
US7003734B1 (en) Method and system for creating and displaying images including pop-up images on a visual display
US10079737B2 (en) Method and system for generating comparable visual maps for browsing activity analysis
JP2008546103A (ja) 第三者ウェブ・プラグイン・コンテンツのためのウェブ使用オーバーレイ
US8196048B2 (en) Associating website clicks with links on a web page
US8930818B2 (en) Visualization of website analytics
US9858600B2 (en) Universal tag for page analytics and campaign creation
US20180046637A1 (en) Uniquely identifying and tracking selectable web page objects
US6848075B1 (en) Internet web browser with memory enhanced hyperlink display
US9996513B2 (en) Flexible analytics-driven webpage design and optimization
WO2008094738A1 (en) User simulation for viewing web analytics data
US20090094525A1 (en) System and method for dynamic media integration into web pages
US20020089532A1 (en) Graphical user interface and web site evaluation tool for customizing web sites
JP2005531854A (ja) サイト訪問パスデータの取得および表示
CA2677220A1 (en) Retrieval mechanism for web visit simulator
US20130246950A1 (en) Methods and apparatus for creating overlays according to trending information
CN106202101B (zh) 广告识别方法及装置
US20190385030A1 (en) Page analysis method and apparatus
US20120316902A1 (en) User interface for real time view of web site activity
US6959424B1 (en) System and method for displaying an enabled image associated with a predetermined image in an iframe of a visual display
US20220222423A1 (en) System and computer-implemented method for in-page reporting of user feedback on a website or mobile app
US20110197133A1 (en) Methods and apparatuses for identifying and monitoring information in electronic documents over a network
Lamberti et al. Supporting web analytics by aggregating user interaction data from heterogeneous devices using viewport-DOM-based heat maps
JP5129742B2 (ja) データセットに対してセグメンテーション基準を増加的に追加する技術

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24804376

Country of ref document: EP

Kind code of ref document: A1