Blocks
Best footer blocks 2026: 45 verified sections
45 footer sections from 10 registries, read file by file: how many dependencies they carry, what breaks at 360px, and why two table rows are not really page footers.
Key points
- 45 footer blocks and 51 files in total: 1.1 files per section on average.
- A footer breaks on the 320px grid and on legal text contrast, not on looks.
- Two table rows are dialogs with an inner footer, not page footers.
A footer that survives production closes three loops: it takes the visitor where the navigation did not, it shows the legal references, and it does not shift the layout when the language changes. The EneUI catalogue indexes 45 of them from 10 registries, counted on 1 November 2026, and each one is a section with its own files rather than a screenshot.
What breaks is not the look: it is the grid. At 320px the four columns turn into a wall of links, the legal block lands under the cookie banner, and the copyright line overlaps the social icons. A footer designed on a desktop and never tried on a 360px phone looks correct in preview and unreadable in production, where the visitor arrives with a different system font and the dark theme already active.
What actually breaks
Three failures repeat. First: secondary links use a grey built from an opacity token, which drops below 4.5:1 in dark mode. Second: the list of offices or categories is generated by JavaScript, so the footer stays empty when the script fails or the crawler does not run it. Third: the copyright year is typed by hand and ages quietly. None of them shows in a screenshot; they show when you measure contrast, disable JavaScript and open the page in two languages.
How many files and dependencies you accept
The numbers: the 45 blocks add up to 51 files, which is 1.1 files per block, and only 5 go beyond a single file. Declared npm dependencies total 17 and registry dependencies 56: the Shadcn Space Footer 01 asks for three files and a component tree worth reading before you install. A one-file footer takes half an hour to adapt; a three-file one forces a decision about where the content lives and who maintains it.
- File count: above two, the block carries sample data to replace, not only markup.
- Registry dependencies: these are the shadcn components the block imports; if your project already customised one, the install overwrites it.
- npm dependency: one more package in the footer is one more package on every page of the site.
- Publisher: Shadcn Space, efferd, flx and creative-tim share neither code style nor licence.
The table, sorted by file count
The first rows are not the best: they are the largest. A block with three files holds a header, content and sample data; a block with one file is a single component. The order estimates the cost of adaptation before you open the preview; it is not a ranking of taste.
| Block | Registry | Files | Category |
|---|---|---|---|
| Footer 01 - Agency Footer Layout | Shadcn Space | 3 | footer |
| Footer 02 - Dark Conversion Footer | Shadcn Space | 2 | footer |
| footer-1 | efferd | 2 | footer |
| footer-2 | efferd | 2 | footer |
| footer-5 | efferd | 2 | footer |
| Terms, sticky footer | flx | 1 | terms |
| Footer-only dismiss | flx | 1 | footer |
| Footer 01 | Shadcn UI Blocks | 1 | footer |
The check that saves the footer
Open the preview at 360px and count the rows of links: more than six without a column heading and the footer cannot be scanned. Then tab through it: every link needs a visible focus ring and the order must follow the columns. Finally turn JavaScript off: the address, the VAT number, the email and the legal links must stay in the document.
- Legal text contrast of at least 4.5:1; column headings 3:1 when above 24px.
- Tap targets of 44px minimum on social icons and the language switcher.
- On a bilingual site the row count must not change between the two versions.
- The copyright year comes from the server or the build, never from a hand edit.
curl "https://ui.eneawork.it/api/blocks/category/footer?limit=10"
One limit this list has
Two rows come from flx and are called “Terms, sticky footer†and “Footer-only dismissâ€: they are dialogs, not page footers. They join the category because the title contains the word footer and the manifest declares no categories; the grouping is derived from the publisher wording, never invented, but it is still a derivation. Across 45 rows the error is two, which is enough not to treat the count as a signed taxonomy.
Decision rule
If the footer must hold more than twelve links, take a column block with headings and group by intent: product, resources, legal. If the links are fewer than eight, the single-row efferd footer costs less maintenance and needs no grid. The alternative is writing it yourself: a footer is a list of links and two paragraphs, so about twenty lines with grid and a container query are enough, and you skip a dependency nobody will update.
The sections live under /blocks/category/footer and the full inventory under /blocks; the Shadcn Space Footer 01 has its own page here. For the internal-link structure read the hub and spoke guide, for phone behaviour the mobile checklist, and for copying a block against using a headless library copy-paste versus headless.
Frequently asked questions
How many footer blocks does the catalogue hold?
45 sections, counted on 1 November 2026 across 10 registries. The figure covers every block whose declared or derived category is footer, not a hand-picked shortlist.
How many files should I expect in a footer block?
The average is 1.1 files per block and only 5 sections out of 45 use more than one. A multi-file block also brings sample data you have to replace.
Must the footer work without JavaScript?
Yes, if it holds an address, contact details or legal links. When those arrive from a script, the footer stays empty once the script fails and the crawler never sees it.
What contrast does footer legal text need?
At least 4.5:1 for body text and 3:1 for headings above 24px. A grey built from an opacity token often falls below that threshold in dark mode.
Why do two dialogs appear in the footer list?
Because their title contains the word footer and the manifest declares no categories. The grouping is derived from the publisher title, which is documented and still a derivation.