The BibTeX Format

A .bib file is a plain-text database of references. This page describes everything it can contain, from entry types and fields to abbreviations and the finer points of the syntax.

On this page
  1. What a .bib file contains
  2. Entry types
  3. Standard fields
  4. Names
  5. Field values
  6. Abbreviations with @string
  7. @preamble and @comment
  8. Cross-references

What a .bib file contains

A BibTeX file may contain four kinds of blocks, each starting with an @:

  • Entries such as @article, @book or @inproceedings, each describing one reference.
  • @string defines abbreviations that can be used in field values.
  • @preamble holds LaTeX code that is copied into the bibliography, typically macro definitions.
  • @comment is ignored by BibTeX. In practice, anything outside an @ block is ignored too.

An entry consists of the entry type (the word after @), a citation key, and a list of fields:

@misc{patashnik-bibtexing,
  author = {Oren Patashnik},
  title  = {{BibTeXing}},
  year   = {1988}
}

Entry types and field names are not case-sensitive: @ARTICLE, @Article and @article are the same. The citation key is what you use in \cite{...}. It must be unique within your files, and it’s best to stick to letters, digits and -_:. in it.

Entry types

These are the standard entry types understood by all classic BibTeX styles. Fields in the required column must be present, otherwise BibTeX prints a warning. Optional fields are used when present. Any other field is silently ignored, so you can store extra information such as abstract or keywords without affecting the output.

Type Use for Required fields Optional fields
@article An article in a journal or magazine author, title, journal, year volume, number, pages, month, note
@book A book with an explicit publisher author or editor, title, publisher, year volume or number, series, address, edition, month, note
@booklet A printed and bound work without a named publisher title author, howpublished, address, month, year, note
@inbook A part of a book, e.g. a chapter or a page range author or editor, title, chapter and/or pages, publisher, year volume or number, series, type, address, edition, month, note
@incollection A part of a book that has its own title author, title, booktitle, publisher, year editor, volume or number, series, type, chapter, pages, address, edition, month, note
@inproceedings An article in conference proceedings author, title, booktitle, year editor, volume or number, series, pages, address, month, organization, publisher, note
@conference Same as @inproceedings, kept for compatibility as @inproceedings as @inproceedings
@manual Technical documentation title author, organization, address, edition, month, year, note
@mastersthesis A master’s thesis author, title, school, year type, address, month, note
@phdthesis A PhD thesis author, title, school, year type, address, month, note
@proceedings The proceedings of a conference as a whole title, year editor, volume or number, series, address, month, organization, publisher, note
@techreport A report published by a school or other institution author, title, institution, year type, number, address, month, note
@unpublished A document with an author and title, but not formally published author, title, note month, year
@misc Anything that doesn’t fit elsewhere, including websites none author, title, howpublished, month, year, note

Every entry type also accepts key (used for sorting and labels when there is no author) and crossref. The entry types overview has a page for each of the common types, with a complete example and notes on every field.

Newer styles and biblatex add types such as @online, @software, @dataset or @thesis. Classic BibTeX styles treat unknown types like @misc. See Using BibTeX for when to choose biblatex.

Standard fields

Field Meaning
address Usually the publisher’s city. For well-known publishers it can be left out.
annote An annotation, used by annotated bibliography styles, ignored otherwise.
author The author(s), in the format described under names.
booktitle The title of the book or proceedings that the cited part belongs to.
chapter A chapter or section number.
crossref The key of an entry to inherit missing fields from, see cross-references.
edition The edition of a book, as an ordinal in words: Second.
editor The editor(s), in the same format as author.
howpublished How something unusual was published, e.g. a URL for @misc.
institution The sponsoring institution of a technical report.
journal The journal name. Many styles offer abbreviations like jacm as predefined strings.
key Used for sorting and labels when author and editor are missing. It isn’t the citation key.
month The month of publication. Use the three-letter abbreviations jan … dec without braces.
note Any additional information to print at the end of the reference.
number The issue number of a journal, or the number of a report or book in a series.
organization The organization sponsoring a conference or publishing a manual.
pages A page number or range, written with a double dash: 12--34.
publisher The publisher’s name.
school The school where a thesis was written.
series The name of a book series.
title The title of the work. See capitalization.
type Overrides the default type label, e.g. {Research Note} for a @techreport.
volume The volume of a journal or multi-volume book.
year The year of publication, usually four digits.

Fields that aren’t in the classic standard but are widely used include doi, url, isbn, issn, eprint and urldate. The standard styles ignore them. natbib’s plainnat, abbrvnat and unsrtnat print doi, url, isbn and issn, and IEEEtran prints url; none of these prints eprint or urldate. The biblatex styles print all six.

Names

The author and editor fields hold one or more names separated by the word and. Never use commas to separate people. BibTeX understands three name forms:

Form Example
First Last author = {Donald E. Knuth}
Last, First author = {Knuth, Donald E.}
von Last, Jr, First author = {van Beethoven, Jr., Ludwig}

The comma forms are unambiguous and therefore recommended. A lower-case word before the last name (van, von, de la) is recognised as a particle.

author = {Lamport, Leslie and Patashnik, Oren and Knuth, Donald E.}
author = {Lamport, Leslie and others}
author = {{World Health Organization}}

and others at the end of the list is printed as “et al.” A corporate author needs a second pair of braces. Without the extra braces, BibTeX would treat Organization as the last name of someone called World Health.

Field values

A field’s value is enclosed either in braces or in double quotes. Numbers may also stand alone. The following are equivalent:

title = {{Bib}{\TeX}}
title = "{Bib}{\TeX}"
title = "{Bib}" # "{\TeX}"

The difference between the two forms is how they nest. Inside quotes, a literal " must be wrapped in braces ({"}), and inside braces, braces must be balanced. The # operator concatenates values and @string abbreviations. Fields are separated by commas, and a comma after the last field is allowed:

@article{mrx05,
  auTHor    = "Mr. X",
  Title     = {Something Great},
  publisher = "nob" # "ody",
  YEAR      = 2005,
}

This is a correct BibTeX entry, although not a very readable one.

Abbreviations with @string

@string defines an abbreviation once and lets you reuse it anywhere a value is allowed:

@string{tugboat = {TUGboat}}
@string{btx     = {{\textsc{Bib}\TeX}}}

@article{example,
  author  = {Oren Patashnik},
  title   = btx # {ing},
  journal = tugboat,
  year    = 1988
}

Abbreviations are used without braces or quotes, and they must be defined before they are used. The month names jan to dec are predefined, and most styles also define common journal abbreviations.

@preamble and @comment

@preamble passes LaTeX code to the bibliography, which is useful for commands that your entries use:

@preamble{ "\providecommand{\noopsort}[1]{}" }

@comment blocks and any text outside @ blocks are ignored. This makes it easy to add notes to a .bib file, but be careful: a stray @ in such text starts a new block.

Cross-references

An entry can inherit fields from another entry through crossref. This is typically used for papers in the same proceedings:

@inproceedings{doe2024example,
  author   = {Doe, Jane},
  title    = {An Example Paper},
  pages    = {97--111},
  crossref = {conf2024}
}

@proceedings{conf2024,
  editor    = {Roe, Richard},
  title     = {Proceedings of the Example Conference},
  booktitle = {Proceedings of the Example Conference},
  year      = {2024},
  publisher = {Example Press}
}

The cross-referenced entry must come after the entries that refer to it. If two or more cited entries refer to it, it is also listed in the bibliography on its own (BibTeX’s -min-crossrefs option changes that threshold).