Results from the Feature Prioritization Survey 2026

Presentation

This post covers the results of the feature vote that ran alongside the 2026 user survey on the All Our Ideas platform. The vote ran from July 27 to October 1, 2026. Only survey participants had the link, and 80 of the 178 survey participants took part in the feature ranking. In total, they cast 4,714 votes. On average, each participant answered 59 questions and spent about 8 minutes voting.

Participants compared 57 features: 48 that we seeded and 9 suggested by participants during the vote. I manually approved each participant suggestion to avoid spam and duplicates.

Features added late in the vote had less exposure and fewer votes, which may have pushed their score up or down. The table flags the five suggestions with fewer than 63 votes (the bottom 10% of the vote count).

The raw data is available in choice_votes_272357e3-e41a-4e0f-9675-37d254b07435.xlsx (468.8 KB) the methodology is described in this post.

Interpreting the Scores

The score of each feature reflects how often participants preferred it in head-to-head comparisons. Each time a feature was picked over another, it earned a "win". The score is the share of wins relative to the total number of votes, so a score of 50 means the feature won as often as it lost. Here's how to read the scores:

  • High scores (above 63): the mean + 1 standard deviation. These features won most of their comparisons and show strong community preference.
  • Middle range (36 to 63): mixed responses. These features are useful to many but not critical to all users.
  • Low scores (below 36): the mean − 1 standard deviation. These features lost most of their comparisons and are likely more niche or less urgent.

What changed since 2024

Most of the 2024 top features are still at the top: easier joins across two datasets (77), appending new rows to an existing project (72), renaming a column (71) and saving facets (71). Since scores depend on the other options in the vote, which changed between the two years, compare them with care.

Feature Ranking

The Source column shows where each suggestion came from:

  • Seed: a feature from the initial list of options.
  • User: a feature suggested by a participant and added to the vote.

The 2024 column gives the score of the same or a similar feature in the 2024 vote, when there was one (* marks a loose match).

Score 2024 Source Feature Request Comment
77 72 Seed Making joining records easier across 2 datasets Related goal post. Related: #7761. This also covers the user suggestion Add the ability to do a table lookup of values from a pre-defined list of values, which scored 67.
72 73 Seed Allowing import again for adding new rows to existing projects Related goal post. Related: #715
71 72 Seed Easier rename a column by clicking on it Related goal post. Related: #6282. Pull requests are available, but we need help from UX designers and front-end developers to finalize them.
71 65 Seed Option to save facet Related goal post. Related: #560
69 68 User Improved memory efficiency for working with larger projects Related goal post. Added late, only 24 votes. We didn't include this feature in the 2026 options because it wasn't linked to a specific GitHub issue and was hard to scope. It's interesting to see a participant bring it back, and to see it reach the top anyway.
69 61 Seed Drag and drop for columns Related goal post. Related: #7273. Pull requests are available, but we need help from UX designers and front-end developers to finalize them.
68 User Revised user documentation with emphasis on readability by non-technical users, AND a list of recommended or approved tutorials. For reference, we provide on the website a list of structured courses to learn OpenRefine. It's notable that this high-scoring request came from a participant: we still have work to do on user onboarding.
66 67 Seed Better support of nested structure (improved record mode) Related goal post. Related: forum 425
65 58 Seed Allow bookmarking and naming starred GREL expressions Related goal post. It can be solved via #109 or with a simpler design.
64 58 Seed In context help for GREL or wizard-like approach to writing GREL (like Excel) Related goal post. Related: forum 1181. See also AI integrated help for writing regular expressions, GREL etc, which scored 51.
64 44* Seed Better discoverability and installation for OpenRefine extensions Related goal post. Related: #7215 #3223. A sharp increase from 2024.
63 Seed Add duration and estimated completion time for long-running operations Related: #7318
62 58 Seed More and better notifications, error messages, and warnings in OpenRefine Related goal post. Related: error handling label
60 53 Seed Make OpenRefine more useful as an exploratory tool Related goal post. Related: #5315
57 46 Seed Save Template exports Related goal post. Related: #1928 #468
57 46 Seed Pause and resume my operations in OpenRefine Related goal post. Related: forum 482
56 User Add minimal code editor features in the expression window: Indents, line number, syntax highlighting.
56 76 Seed Native Reconciliation with arbitrary external datasets Related goal post. Related: #2003. A sharp decrease from 2024, when it shared the top score.
54 44 Seed Better support of MARC format for complex dimensions and repeating elements. Related goal post. Related: #794 #2127
54 58 Seed Multi-user support Related goal post. Related: #101
54 Seed Allow starred expression to be named Related goal post. Related: #6345
53 Seed Feature to duplicate a project Related: #7633
52 Seed Allow users to partially apply histories Related: #7500
51 44 Seed A walkthrough tutorial Related goal post
51 40 Seed AI integrated help for writing regular expressions, GREL etc Related goal post.
51 51 Seed Improved integration with cloud storage services for data import and export. Related goal post
51 45 Seed Allow users to set precise values for numeric facets Related goal post. Related: #1928 #5008
50 62 Seed Support Python 3 as an expression language - Continue maintaining Python / Jython option. Related goal post. Related: #2249
50 User When doing a refresh, keep facets and the status of columns (width, collapsed yes/no). Added late, only 48 votes.
50 59 Seed Support for more diverse (human language) alphabets/scripts, date and time formats... Related goal post
49 Seed Better generalizability for the "transpose columns into rows" operation Related: #7205
49 49 Seed Improved JSON parsing when calling API Related goal post. Related: #1440 #2515
47 53 Seed Option to refactor the JSON operation scripts to edit a facet, update a GREL command, or add a step Related goal post
46 User A direct GOTO column feature to scroll left and right to a particular column for managing "wide" data sets. Added late, only 61 votes.
46 32 Seed Delete multiple projects at once Related: #4965. A sharp increase from 2024, and it will ship in the next OpenRefine release!
44 Seed Improve stop word handling - customizable and/or multi-language Related: #7330
43 Seed Clean up and document REST API to ease 3rd party integration with Openfine (command line, libraries ...) Related goal post. Related: #7712
42 47 Seed Make OpenRefine easier to learn Related goal post
42 Seed Better preference screen Related goal post. Related: #2796
41 26 Seed Easy start/stop of OpenRefine on Windows Related: #3221
40 Seed Support the reconciliation protocol version 1.0-draft Related goal post. Related: #7186
39 Seed Add any and all GREL controls for working with arrays of booleans Related: #7636
39 37 Seed Add transform for book-style Title casing Related goal post. Related: #7329
38 34 Seed A keyboard-accessible GUI Related: forum 434
37 43 User Work with qualifiers in Wikidata Participants suggested this feature in both 2024 and 2026. However, it's outside OpenRefine's scope, since it requires support in the Wikidata reconciliation service. See the conversation in #4318.
36 34 Seed An online, hosted instance of OpenRefine Related goal post. Related: forum 1631. We are also seeing more JupyterHub-enabled deployments within institutions.
36 20 Seed Support R as an expression language Related: #1226
35 50 Seed Supported REST API for external use Related goal post. Related: forum 1628. A sharp decrease from 2024.
34 Seed Spread/unpack operator support for GREL Related: #7635
33 Seed Add a reduce GREL function Related: #7565
32 User Allow storing from the UI of one or more Jython classes/libraries, that can be reused/imported by scripts Added late, only 61 votes.
31 Seed Make map() a synonym for forEach() in GREL Related: #7618
28 Seed Dark mode Related goal post. Related: #3017
28 User Prioritize Jython over GREL. Jython is more powerful, flexible, and generic. It helps to reuse code from OpenRefine in other scripts Added late, only 41 votes.
28 29 Seed Parquet import/export Related: #1929
15 20 Seed Support HDF5 importer and selecting a file within it Related: #640

Additional Feature Requests

The open-ended questions of the user survey also brought feedback and suggestions that weren't part of the vote. They give useful insight into user needs.

macOS support. Several respondents asked for a native app for Apple silicon and for continued support on macOS. We plan to make this available in the next release.

New requests:

  • Easier installation and upgrade: "Every time I go to update to a new version I'm convinced that I'm going to do something wrong and lose everything."
  • Easier saving and re-creating of projects, which one respondent described as painful.
  • Keeping facets and column state (width, collapsed) after a refresh. A participant also suggested it during the vote, where it scored 50.

Already available, but hard to find. Some requests are for features OpenRefine already offers, which points to a discoverability issue:

  • Finding and transforming values across all rows, columns and cells.
  • Writing to several columns at once from a single expression.
3 Likes

I actually added this a couple of weeks ago and it's available in the current snapshot releases which can be found by following the instructions here: GitHub - OpenRefine/OpenRefine: OpenRefine is a free, open source power tool for working with messy data and improving it · GitHub

In addition to making the warning go away, it should also be faster for Mac users with Apple Silicon machines.

2 Likes