Skip to main content

Backup & Data Protection Standards

Backup & Data Protection Standards

This document defines DTC's backup philosophy, tiered service models, RPO/RTO commitments, retention policies, immutability requirements, and backup verification methodology. It is the authoritative reference for how we protect client data.


Tiered Backup Service Model

DTC offers three tiers of backup and data protection. The tier a client receives is determined by their service agreement and the performance characteristics of their environment.

Tier 1 — Availability (BDR + Replication/Failover)

Full BDR plus real-time or near-real-time replication to a secondary target (cloud or secondary appliance) with automated or semi-automated failover. This is the highest level of data protection DTC offers.

Prerequisite: Replication requires the client to have identical (or near-identical) servers at the replication target — matching hardware specs, storage capacity, and performance characteristics. The replica must be able to run the production workload at the same performance level as the primary. This is why Tier 1 is the most expensive tier and why not every client qualifies: you're paying for a second server that sits idle until failover. If the replica can't match production performance, the client drops to Tier 2 (BDR without replication).

Replication is not backup. Replication creates a running copy of the production environment that can take over immediately. Backup creates point-in-time snapshots for recovery. They solve different problems: replication solves uptime (the server dies and the practice keeps working), backup solves data loss (someone deletes a database and you need yesterday's version). Tier 1 clients get both because they need both.

RPO: 4 hours maximum, targeting 1 hour where achievable. Because replication handles the continuous data protection layer, backups only need to run once per day. Replication runs hourly (or more frequently) to meet the RPO objective independently of the backup schedule.

RTO: 2 hours.

Key distinction: Backups and replication serve different purposes here. Backups are for point-in-time recovery and long-term retention. Replication is for failover and continuity. Don't over-backup an Availability client just because you can... one clean daily backup plus hourly replication is the correct configuration.

Tier 2 — Backup & Disaster Recovery (BDR)

Full image-based backup with local appliance and cloud replication. This is the standard for clients who pay for BDR services.

RPO: 4 hours maximum. If the client's environment can sustain 1-hour backup intervals without performance degradation, we target 1 hour. If the application stack (Dentrix, Eaglesoft, etc.) cannot handle the I/O overhead of hourly snapshots, we fall back to 1 nightly backup as the hard floor. There is no middle ground... either the environment supports aggressive RPO or it gets one clean nightly image.

RTO: 2 hours.

What this means: If a server dies, we can have them running on the BDR appliance or restored from cloud within 2 hours. RPO determines how much work they lose... 1 hour in the best case, up to 4 hours standard, or 1 business day if performance constraints forced nightly-only.

Tier 3 — Hybrid Cloud Backup (HCB-MSP)

Cloud-based backup only, with local image cache. No availability, no quickboot, no failover functionality. This is the entry-level data protection tier.

RPO: 1 day (24 hours).

RTO: 1 week. HCB-MSP has no rapid-recovery path, so the recovery-time objective is always 1 week — never 1 day.

What this means: The client has backup protection but no rapid recovery path. Restoring from cloud takes time. This tier is appropriate for clients who need data protection but haven't purchased rapid recovery capabilities.

Retention Standards

The default retention policy for all backups, on every platform and tier, is 14 days of versions on local (on-prem) storage and 30 days of versions in the cloud (Nate, 2026-10-05). Extended retention beyond 30 days (monthly, yearly) is configured per-client upon request and is not part of the standard deployment.

Default — 14 Days Local, 30 Days Cloud

  • Local (on-prem): at least 14 days of versions — the fast-restore window
  • Cloud (offsite): 30 days of versions — the disaster and ransomware window

How each platform expresses it:

PlatformLocalCloudConfigured in
Veeam (BDR, Availability)200 restore points on the local backup job — on the standard hourly business-hours schedule this covers roughly 14 days. If a job's schedule changes, re-check that 200 points still reaches 14 days.30 days (restore days) on the S3 backup copy jobVeeam Backup and Replication Standards; backup/veeam/configuration/veeam-provision.ps1
NinjaOne (HCB-MSP)1 month, daily for 14 days (exceeds the 14-day local minimum)1 month, daily for 14 days, then weeklyNinjaOne Image Backup Plan Configuration Standard
SaaS (M365 / Google)—30 days, or unlimited where the vendor includes it at no extra costSaaS Backup Standards

Per-Client Request — Extended Retention

Retention beyond the standard window — monthly and yearly versions — is not enabled by default. It is configured only when a client explicitly requests it, typically for compliance, legal hold, or insurance requirements. Where the platform supports it:

  • Monthly versions: Up to 6 months
  • Yearly versions: Up to 3 years

Document the client's requested retention schedule and the reason in their client documentation. Extended retention increases cloud storage costs and must be accounted for in the client's billing. Don't add retention tiers past the default unless the client asked for them — on Veeam, GFS stays off unless requested.

RPO/RTO Are Defaults

The RPO and RTO for each tier above are the standard for every client on that tier. They change only when a specific client needs something different — the environment cannot sustain the backup frequency (performance), the client chose a different schedule or service level, or another documented reason. When a client deviates, record the client's actual RPO/RTO and the reason in their client documentation. A client with no documented exception is on the tier default. (Nate, 2026-10-05.)

Immutability

Immutable backups are required wherever the technology supports it. This is a compliance requirement, not optional.

Where Immutability Applies

  • Veeam Backup & Replication: Supports immutability natively. Enable it. This is non-negotiable for BDR and Availability clients.
  • NinjaOne Backup (cloud only): Cloud backups are immutable via AWS S3 Object Lock. Confirmed directly by Jeff Hunter, NinjaOne Field CTO (April 29, 2026). Once a revision is written to the cloud, it cannot be modified or deleted by NinjaOne, by DTC, or by an attacker with NinjaOne console access. Important scope limit: the local NAS leg of a hybrid backup is a standard SMB share and is not immutable... treat it as a fast-restore convenience, not a tamper-proof layer. Separately, NinjaOne retains all backup data for 90 days after an endpoint is deleted from the management console, providing recovery from accidental or malicious endpoint deletion.
  • Any solution with native immutability support: Enable it.

Where Immutability Is Not Available

  • Other solutions without immutability: If a backup solution cannot provide immutability and the client requires it for compliance, that client must be moved to a BDR solution that supports it (e.g., Veeam). Do not try to engineer immutability into a platform that doesn't support it natively.

The Rule

If immutability is required and the technology can't do it, change the technology. Don't force a workaround.


Backup Network Throttling

Backup traffic must be throttled relative to the client's available WAN/LAN bandwidth to prevent impact on clinical operations.

During business hours (operational hours): Backup and replication traffic is limited to 20% of the client's available network bandwidth. Dental offices run latency-sensitive applications (Dentrix, Eaglesoft, imaging workflows, VoIP) and cannot tolerate backup jobs saturating the pipe during patient hours.

Outside business hours: Backup and replication traffic can use up to 80% of the client's available network bandwidth. The remaining 20% headroom accounts for overnight processes, updates, after-hours remote access, and any staff still working.

How to apply this: The exact Mbps values must be calculated per-client based on their ISP bandwidth. For a client with 100 Mbps, that's 20 Mbps during business hours and 80 Mbps after hours. For a client with 50 Mbps, that's 10 Mbps and 40 Mbps respectively.

This policy applies to all backup solutions (Veeam, NinjaOne) and all tiers (BDR, Availability, Hybrid Cloud). See the solution-specific configuration pages for how to implement the throttle in each platform.


Backup Verification & Testing

What a Backup Test Is NOT

A virtual machine booting from a backup image is not a complete backup test. A VM boot proves the disk image is structurally intact enough for the OS to start. It does not prove:

  • Application databases are consistent and queryable
  • Blob files (images, documents, attachments) are intact
  • Line-of-business applications can start and serve data
  • The backup contains the data the client actually needs to operate

What a Full Backup Test Requires

A full backup verification must test application-layer data, not just OS boot:

  1. Database availability: Spin up every line-of-business database (Dentrix, Eaglesoft, Open Dental, practice management, imaging, etc.) and verify they accept connections and return data. A SELECT query against key tables is the minimum.
  2. Blob/file integrity: Spot-check a representative sample of blob files (X-ray images, scanned documents, attachments). Open them. Verify they render correctly.
  3. Application functionality: Where possible, launch the application and verify it loads patient data or equivalent business records.

Automated Verification

Automated verification is the L1 rung of the ladder below. It catches gross failures — corrupted images, bad blocks, missing boot sectors, OS-level problems — without anyone touching a console. It is not a data test. Neither a booting image nor a passing checksum tells you whether the practice management database inside it is consistent or whether the imaging blobs open.

DTC runs two different automated methods, one per platform:

  • NinjaOne — boot verification ("Test the Windows OS volume for ability to boot image backup") is enabled on every image backup plan, servers and workstations, so every image is checked automatically. Servers additionally get a bi-weekly manual VM boot test by a technician from the most recent daily image, with the result documented. The NinjaOne Image Backup Plan Configuration Standard is authoritative for these settings.
  • Veeam — automatic data integrity checks of the stored backup files, validating block checksums against what was written. SureBackup does not run on a schedule, so Veeam clients are integrity-checked, not boot-tested.

See Current Standard below for the exact posture and the wording to use with clients.

Automated verification can be extended with scripts to:

  • Connect to databases and check availability
  • Query key tables for row counts or checksums
  • Test blob file integrity if hashes are stored alongside the files

Future State: Hash-Based Verification

DTC's roadmap includes automated hash-based backup verification:

  • Database integrity: Dump the database, hash the dump, store the hash. On boot verify, re-dump and compare hashes. If they match, the database survived the backup/restore cycle intact.
  • Blob file integrity: For applications that store file hashes alongside their blob data, compare hashes post-restore. For applications that don't, a file watcher service could hash files offline and maintain a reference database. This is significant engineering effort and is not happening soon.

Current Standard

DTC's assurance activity is described using the five levels below. Use these names in tickets, in client conversations, and in this KB — do not use the bare word "test" without a level. The client-facing version of this section, with the reply wording and the compliance context, is the "Do you test our backups?" — Compliance and Testing Answer Playbook. This page remains authoritative; the playbook restates it.

LevelTermWhat it provesCadenceIncluded by default?
L0Backup MonitoringA job ran and reported success, and how long since the last successful backup. Nothing about contents.ContinuousYes — every tier, every protected device
L1Backup Verification (automated, platform-level)The stored backup data is intact — the image boots (NinjaOne) or the backup files pass a checksum integrity check (Veeam). Nothing about application data.Automatic, per platform — see belowYes — both platforms
L2Restore Test — file levelA named file or folder can be recovered from a specific revision and opened.At deployment (mandatory), then on requestAt deployment: yes. After that: on request
L3Restore Test — application levelThe line-of-business database restores, starts, accepts connections and returns real records; blob files open and render.On demand onlyNo — requires a written SOP, scoped and quoted
L4Disaster Recovery ExerciseThe site can be returned to operation end-to-end inside its RTO, with a written result.On demand onlyNo — project engagement, scoped and quoted

Each level proves only its own line. A green console does not imply intact backup data. Intact backup data does not imply a working database. Short of a full environmental restore we are checking files, checksums, or that an image boots — the data is very likely fine, but it is never guaranteed, and DTC does not claim otherwise.

L0 — Monitoring. Routine monitoring measures job success/failure and the time since the last successful backup, on every protected device, continuously. This is the baseline and it is included in every tier.

L1 — Automated verification. Both platforms verify automatically. They verify different things, and the difference matters when you are answering a client:

PlatformMethodWhat it actually checks
NinjaOne (HCB-MSP)Automated boot verification on every image backup (servers and workstations), plus a bi-weekly manual VM boot test of servers by a technicianThe image is structurally sound enough to boot and bring up the OS
Veeam (BDR, Availability)Automatic data integrity checks on stored backup filesThe backup files are not corrupt — block checksums still match what was written
  • NinjaOne boot verification is enabled on every image backup plan — servers and workstations — by default. Servers also get the bi-weekly manual boot test; workstations do not. The only exceptions are sites where a ticket explicitly documented a change. If a device is not boot-verified, there must be a ticket saying why.
  • Veeam SureBackup does not run on a schedule at DTC. Isolated-lab restore testing with SureBackup is available on request as L3/L4 work — see the Backup Restore Verification SOP. Veeam clients get automated data integrity checking, not automated boot testing. Do not tell a Veeam client their backups are boot-tested, and do not tell them they have no automated verification either — they have integrity checks. Be precise about which one.
  • Open item: NinjaOne likely performs data integrity checking of its own, but this is not documented or confirmed. Do not claim it to a client until it is verified and written down here.

L2 — File-level restore test. Mandatory at every deployment (see below), and performed on request at any time. Procedure: NinjaOne Backup — Backup Integrity: Manual Verification & Spot-Check Procedure.

L3 and L4 — application-level restore testing and DR exercises. These are not performed proactively or on a standing schedule for any tier by default. DTC performs them on demand: when a client requests one, or when a regulator, auditor or insurer requires one. Because "test the backup" is a category rather than a task, DTC does not begin L3 or L4 work until a written procedure has been agreed between the client and DTC covering four things:

  1. Scope — which servers, applications and databases are in the test.
  2. Pass criteria — what specifically must be true for the test to pass. ("Dentrix opens and returns yesterday's appointments" is a criterion; "the backup works" is not.)
  3. Cadence — annual, semi-annual, quarterly, driven by the client's own obligation.
  4. Evidence — the document the client receives and who signs it.

L3 and L4 are not part of the standard managed services agreement and may carry additional service charges. Where a client has a standing compliance obligation, the agreed cadence lives in that client's documentation and overrides the default of "on demand only" for that client alone. Until automated hash-based verification exists, L3 testing is performed manually as described above; L1 verification supplements it but never replaces it.

Initial Deployment Verification

⚠️ Every new backup deployment MUST be restore-tested before the work is considered complete. Configuring a backup plan and watching the first job succeed is not enough. After the first successful backup (typically within a few days of deployment), perform a test file restore to confirm the backup is producing usable, recoverable data. The ticket for backup setup stays open until that restore test is completed and documented. A backup that has never been restore-tested is not a backup... it is a hope.

This applies to all tiers, all platforms, all new deployments and migrations. No exceptions.

Backup Credentials

All backup platforms (Veeam, NinjaOne, MSP360, etc.) must authenticate to local storage using the dtcbackup service account. Do NOT use NAS admin accounts, domain admin accounts, or any credential with broader access than the backup share requires. The dtcbackup account gets read/write access to the backup share and nothing else... zero trust, least privilege.

See the Client Credential Administration Standard for service account naming conventions, access restrictions, credential storage requirements, and rotation policy.

RPO/RTO Quick Reference

Tier

Service

RPO

RTO

Backup Frequency

Notes

1

Availability

4 hrs (target 1 hr)

2 hrs

Daily backup + hourly replication

Replication meets RPO

2

BDR

4 hrs (target 1 hr)

2 hrs

Hourly if achievable, nightly if not

Performance-dependent

3

Hybrid Cloud (HCB-MSP)

1 day

1 week

Daily

No failover capability

Retention Quick Reference

ScopeLocal (On-Prem)CloudDefault?
Versions — all backups14 days (Veeam: 200 restore points)30 daysYes — standard
Monthly versions—Up to 6 monthsPer-client request
Yearly versions—Up to 3 yearsPer-client request

RPO/RTO and retention on this page are the defaults. Any client-specific change is recorded, with its reason, in the client's documentation.

Where This Is Heading

This page is the policy in force. The reasoning behind the shift away from image-first protection toward layered, application-aware capture in native formats — and the criteria that decide which model a site gets — is recorded separately in Backup Methodology & Direction. Nothing on that page is in force until it is ratified into this one.