The safe approach is to treat a repeatable baseline that isolates raw network, storage, and end-to-end file-copy performance with the same endpoints and data set as a sequence of observable gates, not a single command.
On a home NAS serving wired and wireless clients, the practical risk is file-copy speed changes by client or workload and the network and storage contributions are not yet separated. Record the current identity and recovery point, start with the least invasive discriminator, interpret pass and fail results before changing another variable, and stop when storage becomes unstable or the only recoverable copy would be exposed. The workflow below ends only after the original workload succeeds or the evidence reaches an escalation boundary.
Freeze the test conditions and record the path
Choose one NAS, one wired client, one Wi-Fi client, and a fixed test time. Record negotiated link speed, duplex, switch ports, Wi-Fi band and channel width, signal, VLAN, MTU, protocol, encryption, client power mode, NAS maintenance activity, and source and destination storage.
Use disposable files larger than memory caches for sustained transfer and a fixed directory tree for small-file behavior. Run every comparison in both read and write directions, because a fast NAS read does not prove its write path or the client destination is equally capable.
The ZimaSpace overview of NAS slowdown causes lists network, storage, and background-work causes of slow NAS behavior. This workflow turns those candidates into a saved baseline rather than attempting repairs before one layer is measured.
Measure raw Ethernet and Wi-Fi without storage
Run an in-memory throughput test such as iPerf3 between the NAS or a nearby server and each client. Test both directions, repeat several times, and record throughput, retransmissions, parallel-stream settings, and latency while keeping internet traffic outside the measurement.
The raw LAN throughput isolation explains why iPerf3 separates LAN capacity from disk performance. If wired raw throughput is low, inspect negotiation, cabling, switch, CPU, and MTU before tuning SMB; if wired is healthy but Wi-Fi is low, keep the investigation on radio airtime and client link conditions.
Do not compare a Wi-Fi result from another room with an Ethernet result beside the switch and call the difference protocol overhead. The baseline must record position, interference, and client capability so a later regression uses the same path.
Measure storage and protocol workloads separately
Benchmark the NAS storage locally or through a method that avoids the network, using safe files and queue depth representative of the workload. Record sequential read and write plus a small-file or metadata-heavy test; avoid destructive raw-device tests on a live pool.
Run the fixed large-file and directory-tree copies over SMB or NFS after raw network and storage measurements. Compare end-to-end speed with the lower of the network and storage ceilings, allowing for protocol, encryption, metadata, and client overhead rather than expecting line rate from every workload.
Repeat with caches controlled or clearly labeled. A short cached copy can exceed the sustained disk rate, while a nearly full pool, parity work, snapshots, antivirus, or backup overlap can depress only the file-copy phase.
Publish a baseline and a regression rule
Save commands, file set, timestamps, versions, endpoint names, and median results in one table outside the NAS being tested. Include raw wired, raw Wi-Fi, local storage, large-file read and write, and small-file read and write so future changes can be matched to a layer.
Restart the client and reconnect Wi-Fi, then repeat one run to prove the baseline survives ordinary connection setup. Schedule a second sample during normal household load if that load matters, but do not average busy and idle tests without labeling them.
Use the baseline when performance changes: rerun raw network first, storage second, and end-to-end last. Stop tuning when the original layer returns to its accepted range; escalate hardware only when the same constrained layer fails repeatedly under the recorded conditions.
Support & Tips
More to Read

Live TV Recording Storage Guide for Capacity, Retention, and Cleanup
Measure real recordings, reserve headroom, combine age and capacity limits, and prove the oldest eligible program is removed before storage fills.

Home Media Metadata Recovery Workflow After a Database Restore
Protect the restored state, verify media identity and paths, then repair missing artwork or matches in a pilot library before broad metadata changes.

Jellyfin Client Compatibility Checklist for Audio, Video, and Subtitles
Test representative files one variable at a time and record Direct Play, remux, audio conversion, video transcode, or failure for every client.

