Skip to content
Wikidata for Heritage

Upload to Wikidata via OpenRefine when your source data needs reconciliation, cleaning or multi-column mapping before it is fit to publish — that is, almost any real heritage catalogue. Choose QuickStatements alone only for small, already-clean batches you have prepared by hand. OpenRefine's killer feature is reconciliation: it matches your messy values against existing Wikidata items so you enrich rather than duplicate. If your data is already clean Q-ids in a tab file, OpenRefine adds overhead you do not need.

When does OpenRefine clearly beat the alternatives? ​

Reach for OpenRefine when any of these are true:

  • Your values are names, places or terms that must be matched to existing items, not created blind.
  • The catalogue has dozens of columns to map onto properties and qualifiers.
  • The data is dirty — inconsistent dates, trailing whitespace, variant spellings — and needs clustering first.
  • You want a reviewable schema you can re-run as the source updates.

If none of these apply and you have fifty clean rows, a hand-written QuickStatements file is faster.

What does the end-to-end workflow look like? ​

  1. Import the CSV/TSV into a new OpenRefine project.
  2. Clean: trim whitespace, cluster-and-merge variant spellings, normalise dates with GREL.
  3. Reconcile key columns against the Wikidata service, constrained by type.
  4. Review matches — accept high-confidence, judge medium, create-new only where justified.
  5. Build the schema mapping columns to P-codes, qualifiers and references.
  6. Preview, then either upload directly or export a QuickStatements file.
text
GREL to coerce a year into ISO with precision:
value.toDate("yyyy").toString("+yyyy-01-01T00:00:00Z") + "/9"

How does reconciliation actually prevent duplicates? ​

Reconciliation scores each of your values against Wikidata candidates and returns a ranked list. Constrain it to a type (for example, human or archival creator) and add property hints (date of birth, occupation) so it disambiguates the right "John Smith". The trade-off:

ConfidenceOpenRefine defaultYour action
High (auto-matched)acceptedspot-check a sample
Medium (candidates shown)left for reviewjudge each manually
No matchunmatcheddecide: create new or leave out

The manual review of the medium band is where duplicates are caught. Skipping it is the single biggest cause of polluted uploads.

When should I NOT use OpenRefine? ​

Avoid it when the data is so small that setup outweighs benefit, when the upload is a handful of new items with no reconciliation need, or when your values cannot legally or ethically go onto Wikidata at all (personal data about living people, rights-restricted descriptions). OpenRefine cannot fix a data-suitability problem — it will just upload the wrong thing faster.

Direct upload or export QuickStatements — which is safer? ​

Both end in the same place, but the audit trail differs. Direct upload commits immediately from within OpenRefine; convenient but unforgiving. Exporting a QuickStatements file lets you inspect every line, diff it against expectations, run a pilot, and keep the file as documentation. For institutional work where you must be able to explain every edit, export-and-review wins. Reserve direct upload for low-stakes enrichment you trust.

What are the real costs to budget for? ​

The tool is free, but the time is not. Reconciling and reviewing a few thousand creator names can take a day or two of skilled attention. Memory matters: large projects want 4 GB or more allocated to OpenRefine. And there is a maintenance cost — schemas need updating as Wikidata's property landscape shifts. Treat the first upload as 70% preparation, 30% upload.

Key Takeaways ​

  • Use OpenRefine when data needs reconciliation, cleaning or multi-column mapping.
  • Use QuickStatements alone for small, already-clean, hand-prepared batches.
  • Reconciliation with type and property constraints is what prevents duplicates.
  • Always review the medium-confidence match band by hand before committing.
  • Prefer export-and-review over direct upload when an audit trail matters.
  • Budget time as roughly 70% preparation, 30% upload, plus schema maintenance.

Frequently Asked Questions ​

When is OpenRefine better than QuickStatements for uploading? ​

OpenRefine wins when your data needs reconciliation against existing items, has many columns to map, or benefits from clustering and cleaning first. QuickStatements is simpler for small, already-clean batches you have hand-prepared.

Does OpenRefine reconcile against Wikidata out of the box? ​

Yes. Recent OpenRefine ships with a Wikidata reconciliation service so you can match your values to existing Q-ids, with type and property constraints to improve precision.

Do I need a Wikidata account to upload from OpenRefine? ​

Yes, an autoconfirmed account. OpenRefine authenticates you and can create or update items directly, or export a QuickStatements file you upload separately.

What is the biggest risk of bulk uploading? ​

Creating duplicates of items that already exist. Reconciliation reduces this, but you must review medium-confidence matches by hand before committing the upload.

How large a dataset can OpenRefine handle? ​

Comfortably tens of thousands of rows on a normal machine, given enough memory. Beyond that, reconciliation slows and you should batch the work or script with the API.

Should I upload directly or export QuickStatements? ​

For a reviewable, auditable workflow, exporting QuickStatements and inspecting it before submission is safer. Direct upload is faster but commits immediately.