HttpRequest.AnonymousID Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets the anonymous identifier for the user, if present.

Namespace:   System.Web
Assembly:  System.Web (in System.Web.dll)

public string AnonymousID { get; internal set; }

Property Value

Type: System.String

A string representing the current anonymous user identifier.

The AnonymousID property assigns a long-lived unique identifier to a non-authenticated user, which can be used to track the user or assign profile properties to that user without storing data in a Session object. By default, the AnonymousID property is tracked using a cookie, but it can be set to use the URI when the Cookieless attribute in the anonymous identification configuration section is set to either the UseUri, UseDeviceProfile, or AutoDetect value. You must explicitly clear the cookie if you no longer want it available, for example when an anonymous user is authenticated.

Anonymous identification is used when there is a need to identify entities that are not authenticated and when authorization is required. For more information, see anonymousIdentification Element (ASP.NET Settings Schema)

The following example shows how to use the AnonymousID property by handling the Creating event in the Global.asax file. This example has two parts:

  • A method in the Global.asax file that handles the Creating event.

  • A Web Forms page.

The first part of the code example shows how to set the AnonymousID property by handling the Creating event in the Global.asax file. The method that is named AnonymousIdentification_Creating sets the AnonymousID property when an anonymous ID is created.

void Application_Start(Object sender, EventArgs e)
        // Initialize user count property
        Application["UserCount"] = 0;

public void AnonymousIdentification_Creating(Object sender, AnonymousIdentificationEventArgs e)
    // Change the anonymous id
    e.AnonymousID = "mysite.com_Anonymous_User_" + DateTime.Now.Ticks;

    // Increment count of unique anonymous users
    Application["UserCount"] = Int32.Parse(Application["UserCount"].ToString()) + 1;

The second part of the code example shows how to display the new AnonymousID that is created by the AnonymousIdentification_Creating event handler in the preceding example.

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">

<script runat="server">
  void Page_Load(object sender, EventArgs e)
      if (Application["UserCount"] != null)
          lblUserCount.Text = Application["UserCount"].ToString();
          lblCurrentUser.Text = Request.AnonymousID;

<html xmlns="" >
<head runat="server">
    <title>AnonymousID Example</title>
    <form id="form1" runat="server">
        Number of users: 
        <asp:Label ID="lblUserCount" Runat="server"></asp:Label><br />
    Current user:
        <asp:Label ID="lblCurrentUser" Runat="server"></asp:Label><br />

.NET Framework
Available since 2.0

HttpRequest Class
System.Web Namespace
anonymousIdentification Element (ASP.NET Settings Schema)

Return to top