Skip to content
A machine-readble and human-readble and -writable format for CITATION files. CITATION files provide reference and citation information for (research/scientific) software.
Branch: master
Clone or download
Latest commit 0c79127 Jul 15, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information. Add guidelines for contributing and code of conduct Oct 20, 2017 Add guidelines for contributing and code of conduct Oct 20, 2017
LICENSE Update LICENSE Sep 5, 2018 Update Jul 14, 2019

Citation File Format (CFF)

The Citation File Format (CFF) is a human- and machine-readable file format in YAML 1.2 which provides citation metadata for software. The main website for CFF can be found at


If you want to make your software easily citable, you can put a file called CITATION.cff in the root of your repository. This file should provide at least the minimally necessary metadata to cite your software. An example:

cff-version: 1.0.3
message: If you use this software, please cite it as below.
  - family-names: Druskat
    given-names: Stephan
title: My Research Tool
version: 1.0.4
doi: 10.5281/zenodo.1234
date-released: 2017-12-18

This file can be used to provide much more information about your software. For an overview of what kind of metadata for software can be supplied with the Citation File Format, please see the current version of the format specifications.


There are a number of tools that can help you work with the Citation File Format.

  • doi2cff: Automatically create a CITATION.cff file from a DOI (only for Zenodo DOIs).
  • ruby-cff: Manipulate CITATION.cff files in Ruby
  • cff-converter-python: Python library for reading CFF files and converting them to, e.g., BibTeX
  • cff-reader-java: Java library reading CITATION.cff files into a POJO model
  • schema: Validation schemas for CITATION.cff files
  • github2cff: Attempt to produce a CITATION.cff file from github or gitlab metadata

In addition, there is a web form that can be used to initialize CITATION.cff files


All versions: DOI

The specifications are accessible online in HTML format or as a PDF.

Collaboration, contributions, questions, issues, bugs, etc.

This repository is the landing site for CFF. Please use it to submit issues concerning the format, and for questions, ideas, etc.!


Thanks for your interest in contributing! There are many ways to contribute to this project. Get started here.

Frequently Answered Questions (FAQs)

Why does the format not require a Digital Object Identifier (DOI) when citing a piece of software?

It would still be desirable to cite software for which there is no DOI. In this case, as much information to specify the precise version of the software and how it can be obtained should be given (e.g. a company and the company's product number for that software).


License: CC BY 4.0

Other repositories

  • Specifications and website ( License: CC BY-SA 4.0 The specifications prose is held in a repository from which a static website is built (with Jekyll). This website is hosted on GitHub via GitHub Pages. The src branch holds the sources for specifications and website, the master branch is where the live website lives.
You can’t perform that action at this time.