Hybrid Client-Server Click Tracking Links
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing web tracking systems face challenges in efficiently logging user interactions without impacting performance, particularly in preserving click data during navigation and ensuring timely reporting of resource usage information.
Innovation Solution
A web server generates or modifies web pages to include both client-side and server-side click tracking links, allowing for asynchronous logging of user interactions and synchronous reporting of resource usage, while maintaining a separation of code for tracking and reporting mechanisms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If client-side click tracking code is added to web pages, then click tracking capability is improved, but page loading time and processing complexity increase
Solution Approach 1:
The system performs preliminary classification of resources during the resource request phase, identifying which resources require client-side tracking before the actual web page is rendered. This allows tracking code to be prepared in advance and injected only where needed, avoiding unnecessary processing delays for all page elements.
Solution Approach 2:
Instead of adding tracking code to all web pages uniformly, the system applies client-side tracking selectively only to specific resources that are classified as requiring tracking. This localized approach reduces the overall tracking code footprint and minimizes impact on page loading performance while maintaining tracking capability for important resources.
2Loss of information
If comprehensive click tracking is implemented, then user interaction data collection is improved, but system complexity and processing overhead increase
Solution Approach 1:
The tracking system is segmented into distinct components: resource classification mechanisms, client-side tracking code injection, server-side logging, and data processing pipelines. Each component handles a specific aspect of tracking independently, reducing overall system complexity while enabling comprehensive click data collection through coordinated operation of these modular elements.
Solution Approach 2:
The system introduces intermediary elements such as tracking pixels, event listeners, and data intermediaries that facilitate click tracking without requiring complex integration throughout the entire system. These intermediaries act as standardized interfaces between user interactions and the tracking infrastructure, simplifying the overall architecture.
3Speed
If asynchronous tracking is used, then navigation performance is improved, but data reporting timeliness deteriorates
Solution Approach 1:
The system implements periodic flushing mechanisms where accumulated click tracking data is asynchronously buffered during navigation and then periodically synchronized to the server. This periodic action maintains asynchronous performance benefits during user navigation while ensuring timely data reporting at regular intervals, balancing both navigation speed and reporting timeliness.
Solution Approach 2:
Click tracking data is captured and buffered preliminarily in client-side storage during navigation operations, allowing navigation to proceed without immediate server communication delays. The preliminary buffering enables subsequent batch reporting that maintains data timeliness while preserving navigation performance.
Data Source
AI summary
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for providing asynchronous and synchronous links to resources. According to one example implementation, a method includes receiving a request for a resource, identifying resources to be referenced by the requested resource, and identifying one or more of the referenced resources that are associated with client-side click tracking, and one or more of the referenced resources that are associated with server-side click tracking. The method also includes providing the requested resource. The provided resource includes one or more client-side click tracking links to the referenced resources that are associated with client-side click tracking, and one or more server-side click tracking links to the referenced resources that are associated with server-side click tracking.


