Skip to content

Research

Do agenda systems keep accessible PDFs accessible?

Mostly on a document’s own attachment link, rarely inside the agenda packet, and seldom when the clerk uploads the Word file instead. We inspected what seven agenda platforms publish in Florida towns, and checked a few elsewhere.

Published
Last reviewed
Scope
7 platforms: 41 Florida towns on two of them, about 15 places on all seven

The short answer

A tagged PDF carries the structure a screen reader follows: its headings, reading order, tables and the text describing each image. Without tags, and the document’s language, a PDF can’t be accessible. A clerk posts one through an agenda system in one of three ways, and each has a different outcome.

  • As the item’s own attachment link: mostly kept. Five of the seven platforms passed a tagged PDF through in at least one town, though PrimeGov / OneMeeting stripped every one we sampled in a second town. Municode Meetings has no attachment link, and Diligent’s item links serve a PDF Diligent builds, not the upload.
  • Inside the compiled agenda packet: lost or flattened on most platforms. On CivicClerk the structure survives, but the packet drops the document’s language. No vendor claims its packets keep tags.
  • Uploaded as a Word file for the platform to convert: untagged or thinly tagged everywhere we tested except Legistar.

The merge is where accessibility is lost, not the file. Two vendors using the same PDF library (Aspose.PDF, in different versions) got opposite results, which suggests these are settings each vendor chose, and can change.

Platform by platform

What happened to a tagged PDF on each path. “Removed” means the tags were stripped; “kept” means the structure arrived intact.

PlatformIts own attachment linkInside the packetA Word file uploaded insteadHow sure we are
Legistar (Granicus)Mostly kept, though re-saved and retitled with the file number. In 2 of 16 cities, 7 files reached the public with their tags removed, by Legistar or by whoever made them: we can’t tell which.No platform-built packet seenA tagged PDF (one file, one city)Moderate: the public copies in 16 cities
PrimeGov / OneMeeting (Granicus)Structure came through in a Florida town; removed in a Colorado cityRemoved in bothConverted untaggedStrong for packets; attachments vary by town
CivicClerkKept: served as uploadedStructure kept in 20 of 22, but the document’s language dropped in 22 of 22, and page stamps left unmarkedThinly tagged: paragraphs and lists onlyStrong: 25 towns
Municode MeetingsNone: only “Agenda” and “Agenda Packet” are postedRemoved in 2 of 2 townsNot testedStrong for packets
Diligent Community / iCompassNone: each item link is a PDF Diligent buildsRe-tagged as plain paragraphs, yet labelled PDF/UA-1Diligent says not to rely on itOne town
CivicPlus Agenda CenterKept: uploaded agendas served as uploadedUntagged when the platform builds it; a clerk can upload their ownNot testedModerate
OnBase Agenda Online (Hyland)Kept: tags intact, original maker keptNone publishedConverted untaggedOne meeting

Not tested: eSCRIBE and BoardDocs, which blocked our downloads; AgendaQuick and Laserfiche; and Granicus’s NovusAGENDA, retired September 30, 2025, and iQM2, retiring September 30, 2027. Granicus Peak has no Florida town we could find; in one California city two tagged attachments came through with their tags and original makers, too little to rate.

What we saw on each platform

The counts behind the table. Towns aren’t named: the findings are about the software, not the people who use it.

Legistar

In a large Florida city, the copy residents download is re-saved by a PDF tool (PDFlib PLOP) and isn’t identical to the file stored, and its title is replaced with “file number – attachment name”. Even so, all 515 structure elements, its 5 image descriptions and its bookmarks were kept. A Word file was served as a tagged PDF.

On October 12 we sampled one meeting in each of 16 Legistar cities: 158 attachments, 88 of them tagged. Seven files in 2 cities carried leftovers of tags without the tags themselves. The stored originals sit behind a robots.txt that disallows crawlers, for most cities, so we can’t tell whether Legistar or the author removed them. None of the originals we compared by hand in one city carried a PDF/UA identifier, so whether Legistar’s re-save keeps one is unknown.

PrimeGov / OneMeeting

In a Florida town, an attachment came back with its 750-element structure, though the file wasn’t marked as tagged and we had no original to compare. In a Colorado city, every uploaded PDF we sampled had been rewritten by Aspose.PDF and had no structure left, while dozens to hundreds of leftover marks per file (306, 646 and 96) showed each had been tagged.

Both towns’ packets dropped the attachments’ tags. The Florida packet has no structure at all, and 24 of its 68 pages still point into one. The Colorado city’s 199-page packet says it is tagged, but its structure covers only the three agenda pages. Another 45 pages carry leftover pointers: some land on the agenda’s own entries, so a screen reader that trusts them could read agenda text on an ordinance page, and the rest point at nothing. Word uploads were converted untagged in both. An undated 2026 Granicus release note, seen only as a search snippet, says an issue where attachments “could lose their accessibility features during publishing” was resolved. The Colorado city’s files published on September 24, 2026 were still stripped; the fix may have reached that city later, or cover a different case.

CivicClerk

CivicClerk serves an uploaded PDF as it was uploaded. On October 12 we sampled one meeting in each of 25 towns: 367 attachments, 276 of them tagged, and 22 packets with a tagged attachment to compare against. In 20 of the 22, the packet held every kind of structure its tagged attachments carried; the other two were short only of some figures.

But all 22 dropped the document’s language, which a screen reader needs to pronounce the text, and 2 were tagged but not marked as tagged. Earlier, by hand, we found the “Page X of N” stamps drawn outside any structure, neither tagged nor marked as decoration, and in one of two packets checked closely, two pages pointing to the wrong part of the structure. Content that is neither tagged nor marked as decoration fails PDF/UA, and so, usually, does a missing document language, so every packet we checked by hand would fail it whatever the clerk uploaded. We judged that from their structure, not with a validator. A Word file CivicClerk converted held 139 paragraphs and nothing else, yet declared PDF/UA-1; another reached paragraphs and lists.

Municode Meetings

Each meeting posts two files: “Agenda” and “Agenda Packet”. In one Florida town the agenda, posted on its own, was a tagged Word PDF with 58 structure elements. Inside the packet it is page 1, and the packet has no structure: 26 of its 38 pages still point into one, and 691 marked passages point at nothing. A second town’s packet was the same on all six pages. A staff report or ordinance reaches the public only inside that packet.

Diligent Community / iCompass

In one Florida city (one meeting), each item link returned a PDF Diligent builds: a cover report followed by the attachments. The 199-page meeting package has 19,276 structure elements: 19,230 paragraphs, 45 links and one document. No headings, tables, lists, figures or image descriptions, its “ITEM” and page stamps tagged as content, and a PDF/UA-1 label in its metadata. No richly tagged file could be picked out inside it, so that a tagged PDF’s headings would be flattened is our inference. Diligent’s 2023 fact sheet says attachments stay “as accessible as they were when uploaded”; this town exposed no raw uploads.

CivicPlus Agenda Center

Uploads were served with their original makers in a Florida town and a Connecticut town, where an agenda made in Canva kept its tags and language. Packets the platform built in Michigan and Connecticut were untagged, though neither held attachments. The Florida town builds its own packet in Acrobat: 1,223 structure elements, but not marked as tagged, which most likely comes from the clerk’s workflow, not the platform.

OnBase Agenda Online

In a large Florida city, a tagged memo (44 elements) came through with its tags and its original maker, and a Word file was converted to an untagged PDF. No packets were published for any meeting from August to October 2026.

What the vendors say

  • No vendor claims its packets keep tags. Granicus “cannot guarantee” that attachments will be ADA compliant, and Diligent makes uploaded content “the responsibility of the customer”. A Laserfiche reseller says agencies “remain responsible” for the documents they display.
  • Their answer is an HTML copy beside the PDF. CivicPlus sells DocAccess, which builds HTML views of packets while “original PDFs remain unchanged as the official record”; Diligent announced an integration with it on September 22, 2026. Granicus lists a tool to evaluate and remediate PDFs as a preview.
  • A PDF/UA label proves little. A Diligent package and a CivicClerk Word conversion we inspected both claim PDF/UA-1 with no headings or tables inside.

What clerks can do

  • Upload the PDF, not the Word file. The platform’s converter, not you, decides the tags otherwise, and on most platforms it decided badly.
  • Link residents to each document’s own attachment, and say in the agenda that accessible versions are there.
  • Where only a packet is posted, as on Municode Meetings, or the attachment link can’t be trusted, as on some OneMeeting and Diligent sites, post the PDF on your website too and link to it from the agenda.

To see whether a posted copy kept its structure, compare it with the original: our checker is open source (npm run check-posted in Ada Editor’s public code), or, signed in to Ada Editor, send us both links.

How we tested

We read each file’s internals: its structure tree, whether it is marked as tagged, its language, how its pages point into the structure, counts of each kind of element, and the program that made it. Our findings don’t rest on veraPDF or PAC; we ran veraPDF only on two pairs of files, while testing our checker.

The strongest test pairs the same document taken from its own link and from inside the packet. Pages that still point into a structure that no longer exists show the tags were removed in the merge, which rules out a clerk having uploaded an untagged file.

  • One file at a time, October 8, 2026: 23 public files from 10 Florida towns and cities on 7 platforms, from meetings between July and October 2026, chosen and inspected one by one, plus spot checks in Colorado, California, Iowa, Connecticut and Michigan, and the vendors’ documentation.
  • By our sampler, October 12, 2026: one recent meeting in each of 41 Florida towns on CivicClerk and Legistar, the two of the five platforms we checked that allow automated research (on Legistar, only the copies the public link serves). The sampler checks robots.txt first, waits at least two seconds between requests to a site, and stops visiting a site at its first block. It identifies itself as “Ada Editor platform research” with a link to this section.

PrimeGov, Diligent and Municode Meetings turn automated research away, so the sampler doesn’t visit them. Our October 8 downloads didn’t check robots.txt first: on those three, and on the host where Legistar stores original files, it would have said no. Those findings stand as observations of public files, but we won’t repeat that method. Files were inspected and discarded, not kept.

What this can’t tell you

  • Small samples. Outside CivicClerk and Legistar, each platform rests on one to three towns, and a town’s own settings may change the result: PrimeGov / OneMeeting gave opposite results in two.
  • Not a validation. Findings are about structure, read from the files, not a PDF/UA or WCAG conformance test.
  • Not our own files. The files were tagged Word and Acrobat PDFs that towns had posted. We haven’t posted an Ada Editor export to any platform.
  • A snapshot. Vendors change their software. The dates above are when we looked.

Corrections

If you build one of these platforms, or post through one, and your files show something different, tell us: report a correction. We’ll check it, update the table, and list the change here with its date.

None yet.

Sources

Vendors’ own words, as published. Some Granicus help articles need a customer login and were read only as search snippets.