Skip to main content

Privacy & Masking

Signal JS automatically protects sensitive data at multiple levels with built-in privacy controls.

DOM Element Masking

Use CSS classes or data attributes to control what gets recorded:

Input Field Masking

By default, input values are not masked (except passwords). Set maskAllInputs: true to mask all inputs, or configure per input type:

Automatic Sensitive Data Detection

The SDK automatically detects and masks common sensitive data patterns:

Console Log Masking

Sensitive data in console logs is automatically masked:

Network Body Masking

Request and response bodies are automatically sanitized:

Programmatic Control

Control recording programmatically:

Network Request Masking

Customize network request masking:

Best Practices

  1. Use CSS classes for static elements that should always be masked
  2. Use data attributes for dynamic content or when CSS classes aren’t feasible
  3. Enable automatic masking for inputs by setting maskAllInputs: true (default is false)
  4. Configure sensitive headers to always redact authentication tokens
  5. Use custom masking functions for complex scenarios
  6. Test your masking to ensure sensitive data is properly protected