Implement a reverse proxy

A reverse proxy is a server that sits between a user’s browser and a web server, acting as an intermediary that forwards client requests to the appropriate server. In the context of Coveo Usage Analytics (Coveo UA), a reverse proxy may provide additional control and help overcome challenges posed by ad blockers and privacy plugins.

While data is collected through requests sent from the client’s browser during user interactions, ad blockers and privacy plugins often intercept these requests and prevent them from reaching the UA server on Coveo’s domain. This can affect the accuracy of the data that’s collected.

With a reverse proxy, you can route tracking requests through your own domain and ensure that they’re integrated seamlessly into your Coveo implementation. This approach minimizes disruptions from ad blockers and privacy plugins, as Coveo tracking is solely for the purpose of enhancing your own implementation and doesn’t serve any external features.

What’s a reverse proxy?

Coveo | Using a reverse proxy

A reverse proxy acts as an intermediary between a user’s browser and a web server. When users send requests to the origin server of a site, these requests are intercepted by the reverse proxy, which reroutes them to a different backend server.

Before forwarding, the reverse proxy can act as a pass-through, taking requests made to a specific address on your domain and forwarding them to another domain. Once the appropriate server receives and processes these requests, it sends the response back to the reverse proxy, which then relays it to the user.

Example

Your website, www.barcasports.com needs to communicate with coveo.analytics.com. However, your visitor has installed a third-party blocker that identifies analytics.coveo.com as a tracking site. As a solution, you set up a reverse proxy on your own domain, www.barcasports.com/coveoanalytics. Any request made to this address is automatically forwarded by the proxy to coveo.analytics.com. Since the blocker isn’t aware of this forwarding, the request goes through, and the data is successfully sent to Coveo.

Why use a reverse proxy?

A reverse proxy offers several benefits:

  • Ensure accurate data collection

    For clients with privacy plugins, requests to Coveo analytics endpoints may be intercepted. This can result in incomplete data or even non-functional sites for some users. The use of a reverse proxy ensures that you can navigate around the limitations set by these tracker blockers, and ensure consistent and reliable data collection.

  • Maintaining site functionality

    Certain blockers have labeled Coveo’s scripts as "trackers" and will block any attempts to load them. With a reverse proxy, you can minimize the risk of such disruptions, ensuring that our tracking scripts load correctly for seamless site performance.

  • Control over web traffic

    A reverse proxy lets Coveo customers exercise more precise control over the communication between their website and other sites. This means they can establish their own domain (for example, https://coveo.example.com) to proxy requests to the primary analytics domain (for example, https://analytics.cloud.coveo.com). By doing so, forwarding occurs on the client’s backend, undetected by tracker blockers.

Tip
Leading practice

When opting for a reverse proxy, we recommend selecting a setup that best suits your unique requirements.

  • You can implement a streamlined solution through other services, for example, CloudFlare™, CloudFront™, or Akamai™.

  • You can optimize your existing configuration by setting up an advanced tracking setup where you capture analytics data on your own domain and then forward it to Coveo. In other words, instead of sending analytics data directly from the browser to Coveo, you can first route it through your own server. This allows you to capture the data on your domain before forwarding it to Coveo.