Maintenance Page HTML Template: Say What Is Unavailable and When the Next Update Comes

“Back at 9:30” promises recovery; “Next update at 9:30” promises information. If recovery is still unknown, the maintenance notice must keep those statements separate.

Write the affected task and next update first, then confirm the real server response independently of the page preview.

Planned maintenance notice preview
Planned maintenance notice preview
Open the full example ↗

Use honest planned-maintenance copy

This original fictional notice concerns Lark Workshop registration on October 20, 2026. All times use America/New_York. Registration maintenance begins at 09:00; no reopening estimate has been confirmed.

Headline: Registration is temporarily unavailable

Body: We are performing planned maintenance on workshop registration, starting October 20 at 09:00 America/New_York. We will post the next update at 09:30 in the same time zone. A reopening time has not been confirmed.

Alternative route field: [WORKSHOP-INFORMATION ROUTE TO CONFIRM]

Contact field: [APPROVED CONTACT TO CONFIRM]

Do not show the bracketed fields as functioning links to visitors. Obtain the actual destinations and verify they remain reachable before adding them; otherwise omit those actions from the visitor notice and retain the gaps in the internal preparation record.

Prepare an overrun variant from a real update

If maintenance continues after 09:30, replace the expired next-update sentence using the actual supplied update. An illustrative variant could read:

Registration remains temporarily unavailable. Maintenance is continuing. A reopening estimate is still unconfirmed. Last update: October 20, 09:30 America/New_York. Next update: [TIME TO CONFIRM].

That text is a drafting example, not an actual service update. Confirm the next time before publishing it, or state that the next update time is not yet confirmed. Do not leave a countdown that reaches zero and announces the registration system is open without recovery evidence.

Keep the HTML body separate from the HTTP status

The notice is content. A heading, title, or script inside it does not set the HTTP response status. MDN's 503 reference describes a temporary unavailable response with a helpful body, recovery information in Retry-After when possible, and careful cache handling to avoid stale error pages.

For the authorized server or proxy owner, retain this delivery checklist:

  • The affected route actually returns HTTP 503 while temporarily unavailable.
  • The response body displays the current notice and the supplied date/time zone.
  • Any Retry-After value has a supported recovery estimate; the next-update time is not automatically a recovery estimate.
  • Cache behavior is verified so visitors do not retain an obsolete notice after recovery.
  • Any alternate route or contact included in the notice is actually available.

These are later server-verification requirements. A local view switch or a page displayed elsewhere cannot put the site into maintenance mode, set headers, or prove the affected route has recovered.

Specify the readable body

Give the page one clear task-focused heading, a short status paragraph, the current update information, and only verified alternative actions. Use the supplied time zone instead of relying on the reader to guess where 09:30 applies. Keep decorative illustration from pushing the unavailable task and next update below the initial screen.

The HTML should retain meaningful text if scripts do not run. A preview can help inspect wording and narrow-screen order; it remains separate from an authorized deployment and actual HTTP/header test.

Copy a notice-writing prompt

Draft original HTML maintenance-notice copy and delivery requirements in US English.
Affected task/route and scope: [inputs]
Maintenance start date/time/time zone: [inputs]
Latest actual update and next-update time: [inputs or unknown]
Supported recovery estimate, if any: [input or unconfirmed]
Verified alternate route/contact: [inputs or absent]
Authorized server/proxy owner and existing workflow: [inputs]

Provide planned and continuing-maintenance variants using only supplied notes. Keep next update distinct from reopening, preserve last-update context, and remove expired promises. Include alternate actions only when their destinations are supplied and verified; otherwise keep gaps in internal notes. Specify one readable heading, concise body, meaningful script-independent text and narrow-screen reading order.
Retain a separate checklist for actual503 status, supported Retry-After, cache behavior and alternate-route verification. Do not imply an HTML title/script/preview sets status, schedules recovery, monitors availability, or deploys maintenance. Do not invent times, recovery, contacts or server-test results. Use [NEEDED: input] for gaps. Return manuscript copy/specification only, preserving authorized response/deployment work separately.

Have the service owner confirm the copy and the next update, then the server owner verify the actual response through the authorized workflow. A useful maintenance notice tells visitors what they can rely on now without turning an information deadline into a recovery promise.

Optional: inspect the content preview in NOS

NOS can save and render a prepared HTML notice for checking wording and readability. Use that preview to inspect the unavailable task and next-update distinction; deploy and verify the actual maintenance response through the site's authorized server or proxy workflow.

Explore NOS

Keep reading