System requirements
Supported browsers, operating systems, devices, memory, orientation, bandwidth, media hardware, and policy-specific limitations.
On this page
Use this page to decide whether a candidate's device can run a Proctor assessment. Requirements vary by policy: basic does not use media, standard verifies camera, microphone, speaker, and fullscreen, and strict also requires entire-screen sharing plus continuous screen and webcam recording.
Run preflight on the same device, browser profile, network, and candidate URL that will be used for the assessment. A supported browser can still fail when permissions, enterprise policy, privacy tools, hardware, or the network prevent a required capability.
Prepare the device
Before starting an assessment:
- update the browser and operating system;
- connect the device to power and disable battery-saver mode;
- close video-conferencing, streaming, recording, and other memory-intensive applications;
- disconnect external displays unless the assessment permits them;
- use a stable private Wi-Fi or Ethernet connection where possible;
- allow camera, microphone, fullscreen, and screen sharing when the assessment requests them;
- open the assessment in a normal browser tab, not an LMS, email, social-media, or other in-app browser.
Privacy extensions, VPNs, corporate proxies, DNS filters, and browser shields can block media, storage, or API requests. Test the exact production configuration before an assessment.
Supported browsers and devices
The version floor is enforced by the SDK where a version is shown. Recommended environments are the controlled-trial baseline. Conditional environments are accepted by preflight but have feature limitations or incomplete cross-browser verification.
| Device and browser | basic | standard | strict | Support level and limitations |
|---|---|---|---|---|
| Windows, macOS, Linux, or ChromeOS with Chrome 111+ | Yes | Yes | Yes | Recommended. Current desktop Chrome is the primary automated browser-test baseline. |
| Windows or macOS with Edge 111+ | Yes | Yes | Yes | Recommended. Chromium-compatible; validate enterprise browser policies and extensions. |
| Desktop Brave based on Chromium 111+ | Yes | Yes | Yes | Conditional. Shields can alter memory reporting or block API/storage requests. Test the intended Shields configuration. |
| Desktop Opera based on a current Chromium release | Yes |
Chrome, Edge, and Safari below their listed version floors fail as outdated. Samsung Internet and Opera currently pass browser detection without a version floor; use a current release and include it in your own controlled-trial matrix before offering it to candidates.
The Vue assessment presets allow eligible Android phones and tablets. Raw SystemCheck integrations default allowMobile to false; raw integrations must opt in deliberately and still satisfy every other device and feature requirement.
Hardware and operating system
ProctorKit does not gate a specific desktop operating-system release, CPU model, amount of desktop RAM, or camera resolution. The following are operational recommendations, not additional hidden pass/fail checks.
| Resource | Requirement | Recommendation |
|---|---|---|
| Operating system | Must run a supported browser and expose the required browser APIs. | Use a vendor-supported, fully updated Windows, macOS, Linux, ChromeOS, or Android release. |
| Processor | No CPU model is code-enforced. | Modern dual-core or better; avoid heavily loaded or thermally throttled devices. |
| Desktop memory | No desktop RAM value is code-enforced. | At least 4 GB of memory available after closing other applications, especially for standard and strict. |
| Android memory | A non-Brave Android/Samsung browser that reports 4 GB or less fails preflight. Missing or privacy-altered values are treated as unknown rather than failed. | Use a device whose browser reports more than 4 GB. Physical RAM and the privacy-rounded browser value may differ. |
| Free storage | No fixed disk-space value is checked. Browser storage must be available for IndexedDB and temporary evidence queues. | Keep at least 500 MB free and do not use a profile that blocks site storage. |
Browser storage is used for resilient event and media delivery. If IndexedDB is unavailable, event delivery can fall back to volatile memory and may not survive a refresh. See Evidence delivery for queue, retry, and recording-storage behaviour.
Network requirements
The default preflight floor is 2 Mbps upload and 2 Mbps download. A customer can raise either threshold through policy. Passing preflight is a point-in-time result and does not reserve bandwidth for the remainder of the assessment.
For reliable sessions:
- prefer Ethernet or stable private Wi-Fi over a mobile hotspot or congested public network;
- avoid simultaneous streaming, large downloads, cloud backups, and video calls;
- allow HTTPS, DNS, CORS requests, API
POSTrequests, and direct-storagePUTrequests; - ensure the candidate origin can reach the Proctor API, content assets, face detector, VAD/ONNX assets, and configured storage origin;
- test VPNs, proxies, firewalls, ad blockers, and privacy extensions before the assessment.
strict continuously uploads screen and webcam evidence, so sustained upload stability matters more than a single speed-test result. See Browser and network support for destinations, user-activation rules, request deadlines, and trial scenarios.
Orientation and viewport
- Desktop devices pass the layout check in portrait or landscape orientation.
- Phones and tablets pass in portrait orientation.
- A phone or tablet in landscape fails when its viewport is very wide:
height / width <= 0.6, approximately a width-to-height ratio of1.67:1or wider. - There is no automatic orientation lock. Rotate the device to portrait and retry preflight when the layout check fails.
- Foldable devices and desktop touchscreens are not detected as separate hardware classes. A touch-enabled desktop can be classified as mobile/tablet for layout purposes.
Feature-specific browser behaviour
| Feature | Full support | Degraded or unavailable behaviour |
|---|---|---|
| Camera and microphone | Supported desktop browsers and eligible Android browsers | Permission denial, another application using the device, or OS privacy settings can block access. |
| Speaker test | Supported browsers can play through the system-default output | Selecting a specific output uses AudioContext.setSinkId, which is primarily available in Chromium. Safari plays the test tone through the system-default output. |
| Audio/video prompt playback | Modern supported browsers | Autoplay policy can require a candidate click. Specific-output routing is unavailable on many mobile browsers. |
| Fullscreen | Desktop Chromium, Safari 16.4+, and compatible Android browsers | Requires a live user gesture and can be restricted by iframe or enterprise policy. |
| Screen sharing | Supported desktop browsers | Unavailable for Android and iOS assessment delivery. Permission cannot be persisted; every share or share-again action requires a new user gesture. |
| Entire-screen enforcement | Desktop browsers that expose the selected display surface |
Secure page and permissions
Production assessment pages must use HTTPS. Camera, microphone, screen sharing, fullscreen, Web Workers, IndexedDB, and cross-origin API/storage traffic must be allowed.
When embedding an assessment in an iframe, configure the iframe allow attribute and Permissions Policy for every required capability. A top-level browser tab is the recommended candidate experience because iframe policy and user-activation propagation differ between browsers.
What preflight verifies
Preflight verifies the requirements selected by the assessment policy, including browser/device compatibility, layout, network quality, external-display signal, media permissions, microphone speech, speaker confirmation, camera/face visibility, fullscreen support, and screen-sharing capability or grant.
A pass means the required capabilities worked at that moment. It does not guarantee that hardware will remain connected, the network will remain stable, another application will not take control of a device, or the operating system will not interrupt a mobile browser. Runtime checkpoints and observers detect later changes where the browser exposes enough information.
For the precise checks, thresholds, and failure codes, see Preflight wizard. For policy-specific capability selection, see Policy reference.
Organisation rollout checklist
Before publishing an assessment:
- Choose
basic,standard, orstrictand use the table above to determine eligible devices. - Test current Chrome and Edge on every operating system your candidates use.
- Test the oldest browser version you intend to permit.
- Test the exact production URL, iframe/top-level arrangement, app-key origin, storage CORS, and network controls.
- Test denied and revoked permissions, device unplug/replug, wrong or stopped screen sharing, refresh, sleep/wake, and a network interruption.
- Run a full-length session for every continuous-recording policy and confirm the evidence is complete after clean session end.
Use Controlled trials as the release gate before expanding beyond the recommended desktop baseline.