OMB M-17-06 requires that federal agencies participate in the Digital Analytics Program (DAP) to provide government-wide visibility into how citizens use federal web properties. DAP data informs funding decisions, identifies underserved populations, and powers analytics.usa.gov — the public dashboard of federal web traffic. A site without DAP installed contributes zero data to this shared federal analytics infrastructure, making it invisible in government-wide reporting and preventing OMB from tracking whether the agency's digital services meet performance standards. The absence of DAP also typically means the agency has no analytics at all.
Low because missing DAP tracking violates OMB M-17-06's analytics participation requirement and removes the site from government-wide digital service performance measurement, but does not directly expose citizens to privacy risk or block service access.
Add the DAP tracking script to your root layout's <head>. Replace YOURAGENCY with your agency's DAP identifier, obtained from the DAP team at analytics.usa.gov.
// app/layout.tsx
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="en">
<head>
<script
src="https://dap.digitalgov.gov/Universal-Federated-Analytics-Min.js?agency=YOURAGENCY"
id="_fed_an_ua_tag"
async
/>
</head>
<body>{children}</body>
</html>
)
}
Verify installation by checking that the script tag renders in the HTML source of the deployed page, and that your agency appears in the DAP agency list. If your agency has a documented DAP exemption, record it in your accessibility statement or compliance documentation.
ID: gov-web-standards.analytics-performance.dap-installed
Severity: low
What to look for: Search for DAP (Digital Analytics Program) tracking code in the page head or layout. Enumerate all script tags in the document head and check whether at least 1 matches src="https://dap.digitalgov.gov/*" or similar DAP patterns. Also check environment variables for DAP configuration.
Pass criteria: At least 1 DAP script tag is present in the document head with a valid agency parameter, OR the site has documented exemption from DAP.
Fail criteria: 0 DAP script tags found and no documented exemption.
Skip (N/A) when: The agency has a documented exemption from DAP (some agencies use alternative analytics).
Detail on fail: "No DAP tracking code found in document head" or "DAP is mentioned in config but script tag not present in rendered HTML"
Remediation: Add the DAP tracking script to your root layout. You can request a DAP agency ID from DAP support (analytics.usa.gov):
// app/layout.tsx
export default function RootLayout({ children }) {
return (
<html>
<head>
{/* Other head content */}
<script src="https://dap.digitalgov.gov/Universal-Federated-Analytics-Min.js?agency=YOURAGENCY" />
</head>
<body>{children}</body>
</html>
)
}