How the Journal Checker Tool works

The Journal Checker Tool (JCT) is provided by cOAlition S to authors to support them in finding Plan S compliant "routes" through which to publish their articles. The tool allows an author to enter the name of a funder, an institution and the journal to which they plan to submit an article, and checks if this combination of funder, institution and journal offers any route to compliance with Plan S.


The JCT is divided into two components - a backend and a frontend.

Back-end: the back-end component harvests and caches data from a number of significant data sources, handles search requests via an API, and executes several algorithms used to determine compliance with the Plan S policies. The back-end is designed in such a way that it may be used in other, third-party webservices via its API.

Front-end: the front-end component is the part that most users see, providing the search form and results screen, as well as documents such as FAQs etc.


Data Sources

A number of data sources are used by the JCT to inform its calculation of Plan S compliance.

DOAJ (Directory of Open Access Journals)

DOAJ provides a high quality, manually curated list of fully OA journals, and is therefore perfectly suited to the full OA compliance check for Plan S. DOAJ provides a curated data feed to JCT.

Open Access Button

Open Access Button Permission System provides clear information on how 85% of papers can be self-archived. Information provided includes which versions can be shared, licenses allowed, computed deposit statements and embargoes. Open Access Button provides a curated data feed to JCT.

ESAC Agreement Registry

The ESAC Agreement Registry is a community-curated registry of Transformative Agreements (TAs) between publishers on the one hand and consortia representing academic institutions on the other. The Plan S policy for recognising a TA requires that it be registered in ESAC. Therefore, the JCT derives its list of recognised TAs from the ESAC website.

ROR (Research Organisation Registry)

JCT uses the ROR identifier to uniquely identify academic institutions in the system.

Other data sources

JCT makes use of other data sources to supply information about journals and institutions - including:


The data used in the JCT calculation is both very large (millions of records) and distributed across the global network. This means that, in order to maintain a good level of performance, the JCT operates a set of local caches of some of this data. These caches are "refreshed" regularly. Refreshing the caches picks up new records as well as updates to existing records.


The API to the the back-end component of the JCT is used by the front-end component. This API is also made openly available so that others may use it directly. The API is documented here.


The JCT makes its calculations according to a defined algorithm.


A request against the compliance algorithm (such as via the Web API) can provide the following constraining parameters:

Parameter Cardinality Data type
Journal 1 ISSN
Funder 0..* CrossRef ID
Institution 0..* ROR ID

Note that both Funder and Institution are not strictly required for the algorithm to execute. This is because there are compliance routes documented here which do not require either Funder or Institution. Nonetheless, Funder and Institution data is essential to give the user a complete picture of the compliance space for their context.

The ISSN is required. This constraint means that we can calculate compliance for journals only if they are identified with an ISSN.


The output of the algorithm consists of a set of 4 or more compliance analyses for the various input combinations. Each of these analyses contains:

  • The ISSN of the Journal the analysis refers to
  • The Funders the analysis refers to
  • The ROR IDs of the Institutions the analysis refers to
  • The compliance route for which this answer is relevant
  • Whether this analysis determines the set of Funder, Institution and Journal here to be compliant. One of 3 possible outcomes is available:
    • Compliant - the algorithm has determined that the input would comply with Plan S at the time the query was executed
    • Non-Compliant - the algorithm has determined that the input does not comply with Plan S at the time the query was executed
    • Unknown - there was insufficient information in the data source(s) to determine whether the input complies with Plan S or not at the time the query was executed
  • Qualifications for compliance - any guidance that the user needs to understand their compliance result in the context of the query.
  • An audit trail for the decision - a record of the checks that took place in order to come to this conclusion

The best route to compliance may be different for each user.

The information provided by the Journal Checker Tool represents cOAlition S’s current understanding in relation to the policies of the journals contained within it. We will endeavour to keep it up to date and accurate, but we do not accept any liability in relation to any errors or omissions.