Set your hours once and DineKit shows a live “Open now / Closed” status on your site, tells Google and AI assistants exactly when you trade, and stops orders and bookings landing when your doors are shut. Free, open source, and it all lives on your own website.

A diner checks their phone, sees you look open, drives over — and finds a dark, locked door. That person almost never comes back, and they’ll happily tell everyone why. It’s one of the most damaging things a restaurant can get wrong, and it usually isn’t anyone’s fault: the hours were typed into a page months ago and simply drifted out of date.
The classic setups all leak the same way. Hours buried in a PDF menu can’t be read by search engines at all. Hours written as plain text on an “About” page have no structured data behind them, so Google shows nothing — or worse, guesses — and the new wave of AI assistants can’t answer “are they open now?” for you either. Bank holidays, Christmas closures and one-off private events almost never make it onto the site, because updating them means editing raw page content every time.
Then there’s the quiet killer: your website keeps taking online orders and table bookings for slots when the kitchen is actually closed. Now you’re phoning customers to cancel, refunding deposits, and looking disorganised — all because the ordering system had no idea what your real trading hours were.
DineKit gives you a single opening-hours editor inside WordPress. You set your times per day — including split service like separate lunch and dinner windows — mark the days you’re closed, and add overrides for holidays and special dates. From that one source, DineKit drives a live open/closed indicator on your public site, publishes proper LocalBusiness openingHours schema so Google and AI can read your times, and — as of v1.2.2 — makes those hours the single source of truth that your online ordering and table bookings respect automatically.
No custom code, no separate widget subscription, no phoning anyone. Your hours are seeded the moment you install and self-heal if anything’s missing, so you’re never left with a blank or broken schedule. And because DineKit is free and open source, you keep 100% of every order and own all of your data outright.
Set the times you trade for each day of the week, with support for split service — a separate lunch and dinner window, or all-day opening — so your real schedule is captured accurately.
Your site shows a real-time “Open now / Closed” indicator worked out from your hours, so visitors get an instant, honest answer instead of doing the maths themselves.
DineKit outputs LocalBusiness openingHours structured data in schema.org format, so search engines and AI assistants can read your exact times and surface them correctly.
Add one-off overrides for bank holidays, Christmas, private events or early closes without touching your page content. Set it and the whole site updates.
Your trading window gates ordering and bookings server-side. When you’re closed, DineKit won’t take an order or a reservation for that time — no more cancelling on customers.
Set a last-orders cushion before closing so the kitchen isn’t hit with a fresh ticket at the final minute. Ordering stops at your cutoff, cleanly and automatically.
Opening hours are created on install and captured in the setup wizard. If anything’s missing, DineKit self-heals so you never end up with a blank or broken schedule.
Hours, widget and schema live inside your WordPress install — not a third-party platform. Free forever, open source, and your data stays yours.
| What you need | DineKit | The usual way |
|---|---|---|
| Cost | Free & open source | Free hack or a paid widget subscription |
| Live “open now / closed” status | Built in, updates automatically | Static text — always says the same thing |
| Google & AI-readable schema | LocalBusiness openingHours output | None — a PDF or plain text can’t be read |
| Holiday & special-day overrides | One-off overrides, no code | Manual page edit every single time |
| Drives ordering & bookings | Single source of truth, enforced | Separate — orders arrive when you’re shut |
| Last-orders cutoff before closing | Optional, built in | Not possible |
| Lives on your own site | Yes — you own the data | Often a third-party platform |
When someone searches “restaurant open near me” or asks an assistant “is it open right now?”, the answer doesn’t come from reading your web page like a human would. It comes from structured data — machine-readable markup that states, in a format search engines understand, exactly when you open and close. Without it, Google is left to scrape and guess, and the newer AI answer engines simply can’t represent you at all.
DineKit publishes your opening times as proper LocalBusiness openingHours schema.org output, generated straight from the hours you’ve entered. You don’t write a single line of it. That means the times shown in search, in map listings and by AI assistants stay tied to the same source your website uses — so they can’t quietly drift apart. Get this right and you win the customer at the exact moment they’re deciding where to eat; get it wrong and you’re invisible in the searches that matter most.
Plenty of plugins will display your hours. What sets DineKit apart is that those hours do real work. Because DineKit also handles your menu, online ordering and table bookings, it treats one opening-hours schedule as the single source of truth for all of them.
That has practical consequences. If a day has no trading period set, DineKit treats it as closed rather than falling back to some hidden default — so you can never accidentally take business when you’re shut. Online orders are checked against your live trading window on the server before they’re accepted, and you can add an optional last-orders cutoff so the kitchen gets a breather before closing. Table availability is worked out from the same service periods, meaning the booking widget only ever offers times you can genuinely honour. Change your hours once, and your storefront, your ordering, your bookings and your Google listing all move together.
openingHours structured data in schema.org format, generated automatically from the hours you enter. That’s the machine-readable markup search engines and AI answer tools rely on, so your times can be surfaced correctly instead of guessed at or left blank.Opening hours are the backbone of a working restaurant site — they feed your menu builder, gate your online ordering, and shape the slots in your table booking widget. Set them once with DineKit and everything downstream stays honest, on your own site, for free.
DineKit is free, self-contained and live in minutes. Own your menus, your bookings and your data.
Get DineKit — FreeWe use essential cookies to run this site and, with your consent, Google Analytics to see how it's used. See our Cookie Policy.