Topic Policy and research

Open Data Portals: CKAN vs a Custom Build

The short answer

An open data portal publishes your datasets with a searchable catalogue, downloads, an API, a licence and a version history for each one. CKAN, the open-source portal platform, covers most of that out of the box. A custom build earns its cost when readers need charts, explanations and your own design, not just a catalogue of files.

Written by

Siddharth Kajaria, Founder and CEO

Published

Reading time

12 min read

Shelves of identical boxed files on one side, and the same material opened into a small display with charts on the other.
In this post12 min read
  1. What must an open data portal do?
  2. Should you use CKAN, a hosted platform or a custom build?
  3. What does the publishing workflow look like?
  4. Who keeps the data up to date?
  5. How do you make data usable beyond downloads?
  6. Which way should you go?

Key takeaways

“Which platform should we use?” and “who keeps it updated?” are the two questions every open data project hits first, usually in that order, and the second matters more. A research institute, a government department or a programme team decides to publish its data properly, and the first conversation turns to tools. This guide starts one step earlier: what a portal has to do, then how CKAN, a hosted platform and a custom build compare at doing it, what the publishing workflow looks like, and how to make the data useful to people who will never download a file.

What must an open data portal do?

An open data portal must let people find a dataset, understand it, get it in an open format, reuse it legally and trust that it is current. Everything else is presentation. In practice that means eight things, and check your plan against all eight: leave one out and the data can be online while nobody can use it with confidence.

Eight must-haves

  1. 01

    A searchable catalogue

    Every dataset findable by keyword, topic, publisher, geography and year, with filters that match how your readers think.

  2. 02

    A page for each dataset

    What it contains, who published it, the period and geography it covers, and its files, in one place with a stable address.

  3. 03

    Open formats

    CSV for tables, JSON for developers and, where readers expect it, Excel. A PDF table is not open data.

  4. 04

    An API

    So partners and other portals can pull the latest figures, or only the rows they need, without copying files by hand.

  5. 05

    A licence on every dataset

    A named open licence, such as CC BY 4.0 or ODbL, stated on the page, so people know what reuse is allowed.

  6. 06

    Versions and a change log

    Earlier releases kept and labelled, with a note of what changed, so a figure cited last year can still be traced.

  7. 07

    A methodology note

    How each indicator is defined and calculated, what the gaps are, and how the data was cleaned.

  8. 08

    A last-updated date

    On every dataset and chart, with the next expected update where there is one.

Check the last two first when you plan, because they decide whether your data gets cited. A researcher who can’t tell which version of a dataset they used, or can’t find the note that explains how an indicator was calculated, will cite it carefully or not at all.

Should you use CKAN, a hosted platform or a custom build?

Use CKAN when you publish many datasets and the catalogue is the product; use a hosted platform when you want a portal without running software; build custom when readers come for answers, charts and explanations more than for files. The table compares the three on what decides the choice.

CKAN, a hosted data portal platform and a custom build compared
Compared onCKANOpen source, self-hosted or run for youA hosted platformA portal you subscribe toA custom buildDesigned around your data and readers
On day oneA working catalogue: datasets, organisations, search, licences, previews and an APIA working catalogue, often with charts and maps built inNothing until it is built: you decide what exists
The APIBuilt in, with the optional DataStore for filtering rows without downloading the whole fileOften built in; check the limits and the formatsDesigned for the uses you expect, and built as part of the project
Licences and versionsA licence per dataset from a list; an activity stream of changesDepends on the platform; check how earlier releases are keptWhatever you specify, including labelled releases and a change log
Charts and explanationsGrid, map and graph previews of suitable files; more through extensions or a custom front endOften the platform’s strength, within its templatesBuilt for your indicators and readers: the main reason to build
DesignThemeable; deeper changes mean developing extensionsThe platform’s templates, with your colours and logoYour own site’s design, end to end
Running itSomeone hosts, secures and upgrades a Python application and its search and database servicesThe provider runs it; you manage the contentSomeone hosts and maintains your code, as for any website
How you payNo licence fee; the cost is set-up, hosting and the people who run itA subscription, usually by size or features, for as long as you use itA build cost up front, then hosting and upkeep
Leaving itOpen code and an API: data and metadata can be read outCheck before you sign how data, metadata and URLs come outThe code and data are under your control, if the contract says so
Best whenYou publish many datasets, perhaps from several publishers, and the catalogue is the productYou want a portal quickly, have no one to run software, and the templates fit your readersReaders come for answers, charts and explanations, and the portal must feel like part of your own site

Planning a data portal?

A few facts behind the CKAN column, from its own documentation. CKAN describes itself as “a tool for making open data websites”. Data is published as datasets, each with metadata and one or more resources (the files or links), owned by an organisation that manages its own publishing workflow and user roles. A licence is chosen for each dataset from a list, CSV and Excel files get a grid preview, and each dataset has an activity stream that shows its recent changes. Its optional DataStore loads tabular files into a database, so people can read, search and filter the data through the API without downloading the whole file. The code is on GitHub under the GNU Affero General Public License v3.0, and ckan.org lists government portals such as data.gov, data.gov.au and opendata.swiss among its users (all checked 20 October 2026).

There is also a fourth path that the table doesn’t show as a column, because it is a mix of two: CKAN as the catalogue, with a custom front end. CKAN holds the datasets, the licences and the API; your own site reads from that API and adds the design, the charts and the explanations. You get a proven catalogue and a reader experience of your own, at the cost of running both.

What does the publishing workflow look like?

The publishing workflow takes each dataset from a file on someone’s laptop to a public page in six steps: prepare, describe, review, publish, refresh and retire. The platform matters less than whether these steps are written down and owned. Without them, the first release is careful and every later one is rushed.

  1. Prepare

  2. Describe

  3. Review

  4. Publish

  5. Refresh

  6. Retire

Who keeps the data up to date?

A named person for each dataset keeps it up to date, with the refresh written into their work, not left to whoever remembers. Decide this before launch, because it shapes what you build:

  • Where the source publishes on a schedule or through an API, automate the refresh, and alert someone when it fails or the format changes.
  • Where the data comes from your own analysts, make the upload simple enough that they can do it without a developer, with the same checks every time.
  • Show the last-updated date on every dataset page and every chart, so readers can see how current the numbers are without asking.
  • Plan for the day the owner leaves. The workflow above, written down, is what lets the next person carry on.

A portal that launches with fresh data and then stops updating does more harm than no portal: people find old figures, cite them and assume they are current.

How do you make data usable beyond downloads?

Make data usable beyond downloads by putting the answer on the page: a chart and a plain summary on each dataset page, filtered downloads, an API with examples, and short explanations for the findings people come for. Plan for visitors who are not analysts: someone who wants one number, one trend or one comparison will leave if all they find is a download link. Your analytics and search terms will show which questions they bring.

Nine ways

Generic examples

For the public

  1. A chart on every dataset page

    Needs to work
    A default view chosen for each dataset by someone who knows the data.
    What can go wrong
    A chart that picks the wrong default (the wrong year, the wrong unit) misleads more people than the file ever would.
  2. Short explanations

    Needs to work
    A researcher’s time to write and check each one.
    What can go wrong
    Explanations that are not updated when the data is, so the words and the numbers disagree.
  3. Plain-language search

    Needs to work
    Good metadata, synonyms and tags, written for readers rather than for the publisher.
    What can go wrong
    Search that returns twenty near-identical datasets with no hint of which one to use.

For researchers

  1. Filtered downloads

    Needs to work
    The data held in a database, not only as files, so it can be queried.
    What can go wrong
    Filtered files that leave out the methodology and licence the full download carries.
  2. A citation line

    Needs to work
    Stable addresses and version labels that never change once published.
    What can go wrong
    A citation that points to a page whose data has since changed, with no way to see the old version.
  3. The methodology, one click away

    Needs to work
    One methodology page per indicator, kept with the data rather than in a PDF elsewhere.
    What can go wrong
    A methodology that describes last year’s calculation.

For partners and developers

  1. An API with examples

    Needs to work
    Documentation written alongside the API, and kept up to date with it.
    What can go wrong
    An API that changes without warning and breaks the partner tools that rely on it.
  2. Embeddable charts

    Needs to work
    Charts that resize and stay readable inside someone else’s page.
    What can go wrong
    Embeds that keep showing old data, or break when the portal is redesigned.
  3. Update alerts

    Needs to work
    A refresh process that marks each release, so there is something to announce.
    What can go wrong
    Alerts for trivial changes, which teach people to ignore them.

This is where a custom build, or a custom front end over CKAN, usually earns its cost. A catalogue lists datasets; a reader experience answers questions with them. Our guides to presenting research data to policymakers and data storytelling for research teams go deeper on the explaining side.

Which way should you go?

Count how many of the six statements below are true for your project; the more you tick, the more a custom build fits. None of them is a verdict on its own. They tell you where the weight of your project sits: in the catalogue, or in the reader experience.

CKAN or custom

Your readers

Show or hide the tests3 tests
  1. 01 Most readers want an answer, not a file

    True when
    Why it matters
  2. 02 The portal must feel like part of your website

    True when
    Why it matters
  3. 03 Every dataset needs its own chart or map

    True when
    Why it matters

Read next Dashboards and data visualisation

Your data and team

Show or hide the tests3 tests
  1. 04 The data is a few connected indicator sets

    True when
    Why it matters
  2. 05 You publish for one organisation

    True when
    Why it matters
  3. 06 Publishing must follow your own sign-off

    True when
    Why it matters

Read next Open data portal development

Tailwebs built the dashboards for CEEW’s Green Finance Centre (GFC): the EV dashboard and Renewables India with the CEA. Both are public dashboards: they track indicators for readers who come back for the same numbers, the format that often sits inside a larger portal. We have also shipped full data portals, with dataset downloads, licences and an API for partners.

For how we plan a portal, from the data audit to who keeps it fresh, see open data portal development. If what you need is mainly charts for a known set of indicators, start with dashboards and data visualisation.

02 FAQ

Questions, answered

Is CKAN free?
The software is: CKAN is open source, released under the GNU Affero General Public License v3.0. Running it is not. You pay for hosting, for someone to install, configure and upgrade it, and for any extensions or theming you need.
What is the difference between a dashboard and an open data portal?
A dashboard shows a fixed set of indicators that you chose, so readers can follow a trend at a glance. An open data portal lets readers find whole datasets, download them, reuse them through an API and run their own analysis. Many organisations need both: a portal for the data, with dashboards inside it for the indicators most people come for.
Can we start on CKAN and move to a custom build later?
Yes, and it is a sensible path. Datasets, metadata and files in CKAN can be read out through its API, so a later custom site can import them, or simply sit in front of CKAN and use it as the catalogue behind a new design. Keep dataset identifiers and URLs stable so links and citations survive the move.
Do we need an API if we already offer downloads?
If anyone reuses your data regularly, yes. Downloads suit a researcher who needs the file once. An API suits a partner, a newsroom or another portal that wants the latest figures automatically, or only the rows they need. Without one, every update means someone downloading and re-importing a file by hand, and copies drift out of date.