Hours of operation table generator

Every contact page needs an hours table, and hand-writing seven rows of <tr> is a waste of an afternoon. Paste the hours as a sentence, copy the markup, done — closed days included, times normalised to a consistent format.

Why a table and not a list

Screen readers announce a two-column table with <th scope="row"> as "Monday, 09:00–17:00" — the day and its hours stay associated. A bare list of lines loses that pairing. The generated markup carries no inline styles, so your own CSS controls it.

Pair it with structured data

A visible table helps humans; search engines want JSON-LD. Run the same text through the schema.org opening hours generator and include both on the page.

Do this at scale

This page runs on the public OpenHours API. The same call handles bulk input — up to 500 hours strings per request — and returns all three formats at once. Free tier is 100 requests/day with no signup.

curl -X POST https://smeltworks.com/openhours/v1/parse \
  -H 'content-type: application/json' \
  -d '{"text":"Mon-Fri 9am-5pm, Sat 10-2, closed Sun"}'

Starter — $9/mo, 10k req Growth — $29/mo, 100k req