Free events calendar widget
A live list, calendar and map of local events on your site. One script tag. Free, no API key — keep the "Powered by FindLocal" credit.
Widget catalog
Copy a line, paste it where the widget should appear. Done.
Literary events of New England
Author talks, readings, book clubs and poetry at bookstores and libraries across 18 metros — with book covers and Bookshop.org buy links.
<script src="https://findlocal.community/widget.js" data-widget="literary-new-england"></script> <p data-findlocal-credit><a href="https://findlocal.community/">Powered by FindLocal</a></p>Author events of New England
The same region, only events with a known author on the bill.
<script src="https://findlocal.community/widget.js" data-widget="literary-new-england-authors" data-view="calendar"></script> <p data-findlocal-credit><a href="https://findlocal.community/">Powered by FindLocal</a></p>Free this weekend
Everything free, Friday night to Sunday. Swap in your metro.
<script src="https://findlocal.community/widget.js" data-widget="free-this-weekend" data-city="boston"></script> <p data-findlocal-credit><a href="https://findlocal.community/">Powered by FindLocal</a></p>Live music
Every show at every venue we track in a metro, list · calendar · map.
<script src="https://findlocal.community/widget.js" data-widget="live-music" data-city="austin"></script> <p data-findlocal-credit><a href="https://findlocal.community/">Powered by FindLocal</a></p>Family events
Storytimes, workshops and kid-friendly shows.
<script src="https://findlocal.community/widget.js" data-widget="family" data-city="chicago"></script> <p data-findlocal-credit><a href="https://findlocal.community/">Powered by FindLocal</a></p>Sidebar: next literary events
The next five, small enough for a sidebar or article footer. Add data-more with your full events page and a click opens the event there.
<script src="https://findlocal.community/widget.js" data-widget="literary-new-england" data-view="compact"></script> <p data-findlocal-credit><a href="https://findlocal.community/">Powered by FindLocal</a></p>
Build your own
Your snippet
Live preview
Reference
Every data-* attribute
| Attribute | Values | Notes |
|---|---|---|
data-widget | literary-new-england · literary-new-england-authors · new-england · free-this-weekend · live-music · family | A catalog preset. Explicit attributes override it. |
data-city | boston · boston,providence,hartford | One metro, or a comma list of up to 25. Defaults to Boston. |
data-venue | A venue id (from its findlocal.community/venue/… page) | Only that venue's events — your own calendar on your own site. Pair it with the venue's data-city. |
data-region | new-england · uk-ireland | A named group of metros. Wins over data-city. |
data-cat | Comma list of category slugs | Pins the widget to those categories (the category chips disappear). |
data-authors | 1 | Only events with a known author on the bill. |
data-when | today · tomorrow · weekend · week · month | Opening date window. Default: everything upcoming. |
data-from, data-to | YYYY-MM-DD | A fixed window — a festival week, a season. Wins over data-when. |
data-free | 1 | Free events only. |
data-filters | off | Hides the visitor filter toolbar. Visitors can also collapse it themselves. |
data-near, data-radius | <lat>,<lng> · km (1–200) | Open on a proximity search around a point, e.g. your shop. Default radius 25 km. |
data-view | list · calendar · map · compact · strip | Opening view. The calendar pages six months ahead. compact (a short sidebar list, 5 events) and strip (a row of thumbnails, 8) are small placements for the rest of your site: no filters. |
data-more | https://your-site/events | Your full events page. compact and strip show "See all events" and open a clicked event there. |
data-seo | on · off | schema.org Event data for these events on your page, for search engines. On for list/calendar/map, off for compact/strip (so a sidebar on every page does not repeat it). |
data-theme | auto · light · dark | auto follows the visitor's OS. |
data-limit | 1–300 | Rows in the list view (default 100). The calendar is not limited by it. |
data-height | Pixels | Height before the widget reports its real one (default 320). |
data-max-height | Pixels · none | The widget grows with its content up to this, then scrolls inside itself (default: 85% of the visitor's window, 420–900 px). none = always grow. |
data-partner | Short id | Names your site in our referral stats (utm_content on the in-frame credit link). |
How it works
widget.js(~2 KB, no dependencies) inserts an<iframe>after the script tag. Styles never leak either way; several widgets on a page work independently.- The frame sizes itself over
postMessage, up to a height cap (data-max-height); past it the widget scrolls inside itself, so a long list never stretches your page and opening an event never leaves the visitor scrolled past it. Filtering re-renders inside the frame — your page never reloads. - No cookies, no tracking.
geolocationis delegated only for the "Use my location" button, and not at all withdata-filters="off". - Server-rendered and cached 10 minutes at the edge. Listings refresh daily.
- Search engines: the frame itself is not indexed, so the script also adds schema.org
Eventdata for the listed events to your page, each pointing at your page. Turn it off withdata-seo="off". - Visitors stay on your site. Clicking an event opens its details inside the widget: date, venue, description, add-to-calendar, and a button to the venue's own ticket or event page (new tab). The open event is kept in your page's address as
#fl-event=…, so it can be shared. - The "Powered by FindLocal" line sits on your page, just under the frame. The snippet includes it so it works without JavaScript; restyle it freely (keep it right after the script tag), just keep it visible.
Terms
- Free for any site. Keep the "Powered by FindLocal" credit line that comes with the snippet visible (the widget adds it if you leave it out).
- Event details come from venue calendars — confirm with the venue. See the terms.
- Run a venue we list? Open its page on findlocal.community and use "Put this calendar on your site" — the builder opens with only your events (
data-venue). - Heavy traffic or a custom preset? Email us.
FAQ
How do I add an events calendar to my website?
Copy one script tag from the catalog or the builder below and paste it where the calendar should appear. It works on any site that accepts HTML: WordPress, Squarespace, Wix, Webflow, Ghost, or hand-written pages.
Is the widget really free?
Yes. No API key, no account, no limit on page views. Keep the small "Powered by FindLocal" credit visible under it.
Can it show only my venue's events?
Yes. Pin a venue with data-venue (venue pages link here with it preselected) and the widget becomes that venue's own calendar.
Which places are covered?
84 metros in the US and the UK. One widget can cover a metro, a list of up to 25, a region like New England, or everything near a point.
Does it help my SEO?
The script adds schema.org Event data for the listed events to your page, each pointing back at your page, so search engines can show them. Turn it off with data-seo="off".
More: how the widgets work, the local events API and the events MCP server.
Need the raw data instead of a widget? Get an API key — free tier, no card.