Suppose that I moved from BibTeX to biblatex. With BibTeX I just copied the content of .bbl file into final version of my paper before submitting it to a journal. What should I do at same stage having .bbl file produced by biblatex? It is of quite different format.

  • 27
    It's clearly high time that journal publishers were dragged kicking and screaming into the century of the fruitbat. – naught101 Nov 14 '12 at 5:03
  • 13
    Publishers, and their authors, regard LaTeX and related software as tools to use, rather than as programming projects. They will use what works best for them. Until biblatex has documentation suitable for ordinary authors and in-house typesetters, journals will not use it. – Colin McLarty Sep 28 '13 at 18:35
  • 4
    Another caveat, right off the bat: biblatex is plain incompatible with REVTeX, which is the required style for most APS, AIP, OSA and AAS (physics) journals. – E.P. Dec 2 '14 at 13:02
  • biblatex can be made to work with REVTeX 4.0 but not REVTeX 4.1. All of the above accept manuscripts in REVTeX 4.0. – Jan-Åke Larsson Jun 6 '17 at 12:21

This is a well-known problem, but a little workaround has recently been created: CTAN, GitLab


In preamble, after the biblatex package is loaded via \usepackage[...]{biblatex}:


At the very end of document:


The desired bibitems will be written directly to the PDF file.

When it's time to switch to bibitems (e.g. before sending the paper to the journal), just copy them to your .tex file, remove biblatex commands and load cite package.

See also

  • 1
    Can you explain what mean exactly by "remove biblatex commands and load cite package"? And does this work with other citation styles, such as biblatex-apa? – avs Jul 26 '20 at 16:13
  • It should work with any biblatex style, in particular - with biblatex-apa. – NickKolok Jul 29 '20 at 13:54
  • To load cite package, just insert the following line into the preamble: \usepackage{cite}. – NickKolok Jul 29 '20 at 13:55
  • By "removing biblatex commands" I mean that you should remove at least: \usepackage[...]{biblatex}, \addbibresource, \printbibliography and \printbibitembibliography, as well as other biblatex-specific commands. – NickKolok Jul 29 '20 at 14:02
  • However, there can be problems if your biblatex style uses footcites or non-numeric references, e.g. "see [SAg92]". If you really encounter severe problems wit this, plese don't hesitate to open an issue. – NickKolok Jul 29 '20 at 14:05

it is also possible, but not so easy as with bibtex. When you finished your document write into the preamble after the already existing biblatex definition:

\usepackage[style=numeric-verb]{biblatex}% change it for your needs 
%-------------- start insert modified commands ------------------
%% copy here the contents of the created bbl file
%-------------- end insert modified commands ------------------

the only difference is that \printbibliography now takes the contents of the bib not from the external file but from the inserted bbl contents.

If you run bibtex instead of biber (btw: biber is the better choice) then you have to use it in this way:

\def\blx@bblfile@bibtex{% instead of ...\blx@bblfile@@biber
    %% copy here the contents of the created bbl file

Pay attention that you do not insert the last line of the bblfile which is the command \endinput. This one should be deleted or commented with a preceding %.

  • 2
    Is there any reason this wouldn't be acceptable by a journal? If not, the "accepted" answer is a bit misleading.. – naught101 Apr 30 '12 at 1:31
  • 2
    @naught101 See my edit concerning 'other' support. There is no guarantee that biblatex, the necessary support packages or indeed the e-TeX extensions will be available. – Joseph Wright Jul 12 '12 at 13:24
  • 5
    @JosephWright: how depressing. I know technology doesn't always keep up with science, but it'd be nice to think science could keep up with technology... – naught101 Jul 13 '12 at 2:25
  • 12
    To answer my own comment, some journals (Looking at you, AGU) expressly forbid the usage of \def outside their provided style files: % PLEASE DO NOT USE YOUR OWN MACROS % DO NOT USE \newcommand, \renewcommand, or \def.. So even this solution does not work. Horrible. – naught101 Nov 14 '12 at 4:51
  • 4
    Can people post as comments the name of the publisher and whether or not they accepted the result of doing what this answer says? Specifically, I want to know if ACM accepts this. – Abhishek Anand Jun 5 '14 at 22:17

For journal submission, I'm afraid my answer would be 'do not use biblatex'. The bibliography is generated at the LaTeX end by biblatex, and so it is not possible to 'paste in the formatted result'. Most journals want you to either do this or use their own BibTeX style, so biblatex is a bad choice. (This is a shame, but unless/until the journals update their workflows that is how it is.)

One point to note in particular is that you cannot be sure of the package or engine availability on journal systems. For example, the American Chemical Society do not have the e-TeX extensions available on their servers (at the time of writing). These were finalised in 1999, so the time lag is significant. biblatex requires e-TeX, so it would be impossible to use if for a submission to the ACS.

A second area to bear in mind is journal work flows. Depending on the journal, your LaTeX source may be converted into some other format for publishing. To do that, the publisher may use additional data written to the .bbl file (for example the data repeated in an XML 'comment') or some form of .bbl parser to convert the bibliography. That will not work with biblatex unless they have set up their workflow to deal with it.

  • 15
    sadly for users, this is correct on both counts -- dependence by journal publishers on established production systems (which change only glacially), and their support of biblatex-specific styles. bibtex has been problematic for ams for a long time, and an alternative, amsrefs, was first distributed in 2001. (biblatex first appeared in about 2006.) unfortunately, amsrefs isn't supported by (most?) other journal publishers, so there's no common format in which to build a personal database. – barbara beeton Jul 12 '12 at 14:02
  • 4
    I would add to @barbarabeeton's comment a particular example where biblatex is inconsistent with journal publishers. All APS and AIP journals (journals on physics) requires for a submitted article to be compiled with RevTeX class. RevTeX loads natbib package which is inconsistent with biblatex. – Igor Kotelnikov Jan 14 '14 at 3:25
  • 7
    Sorry, this is not "until journals ..." but rather "until biblatex ..." As a journal typesetter, I have other problems than dealing with a system like biblatex that is complicated to setup. So if biblatex isn't able to provide a standalone .bbl file, I am rejecting it. The same is true for instance for TikZ: People simply have to externalize their figures. – yo' Mar 16 '15 at 17:28
  • 10
    @yo' Sorry to be blunt, but as a taxpayer and author I have to wonder what (academic) publishers do with all the money if they can't (be bothered to) keep up to date with technology even at the glacial pace the TeX ecosphere is moving. Biblatex is five years old now; surely there's been enough slack for a developer month or so to implement support for it during that time period. – Raphael Sep 17 '15 at 22:04
  • 5
    @Raphael, for individual users who like to keep up with the latest software, five years is a long time. For an organization that has to customize software and internal procedures involving many people, dealing with constraints and desiderata that go well beyond the use of a single software package (e.g. publishing in multiple formats), five years is not so long. As an individual user, I develop habits and standard software configurations or customizations that "break" when I follow advice that demands that I use the latest version of a package. (Advice for developers: First do no harm.) – Mars Jan 16 '16 at 21:38

I have spent some time on submitting through Springer's "Editorial manager", this may work for other submissions too. Although the latex system of the journal must not be too old.

Basically there are three problems that I have run into.

  1. Match .bbl file with biblatex version. Just now "Editorial manager" uses texlive-2015, but my .bbl file is produced with texlive-2016 so "Editorial manager" biblatex version does not match my biber version. Solution: submit the biblatex style files.

  2. Have "Editorial manager" accept the file extensions of the biblatex style files. "Editorial manager" forces most of the biblatex style files to be Supplementary material, and as such it is not available at compilation time. Solution: use the filecontents package to generate the biblatex style files from a .sty file.

  3. "Editorial manager" does not accept the .bbl file anyway. I have noticed that any comments added at the beginning of the file makes biblatex think biber did not produce the file, and refuse to use it. Perhaps Editorial manager adds something, I do not know. Solution: use the filecontents package to generate the .bbl file.

To this end, I wrote a Python program to generate the needed .sty file, the below program assumes your .bbl file is named Manuscript.bbl:

#! /usr/bin/env python
from os import path

# Author: Jan-AAke Larsson <jan-ake.larsson@liu.se>

f.write("""% File containing the needed environment for biblatex
% Included here to bypass Editorial Manager heavy-handed file classification
% The .bbl file needs to be included too, probably Editorial Manager adds
% a LaTeX comment header that makes biblatex think biber did not produce it 

% Enable overwriting files


for i in ["Manuscript.bbl",
    for j in g.readlines():

This generates biblatex-files.sty that you can include in your submission instead of the .bbl file. The biblatex style files I found by doing grep latex/biblatex Manuscript.log, you may need to include other files if you use a different biblatex style than me. Of course, you need put the following in your preamble.


In my submission there are now only two manuscript files: Manuscript.tex and biblatex-files.sty, and a collection of figures.

A final hint: a recurring problem in all this is that "Editorial manager" only returns the log file if LaTeX fails completely, otherwise an incomplete manuscript PDF. So there is no way to know what went wrong if there are warnings only and an incomplete PDF. If you run into problems and need to know the cause, I recommend putting the following in the preamble, this will include the LaTeX log at the end of your PDF. Do not OK this PDF in the submission system, though. :)

  • 6
    ... and the paper was accepted, and published from our electronic submission without protest from the editorial system. – Jan-Åke Larsson Aug 9 '17 at 21:00
  • What do you then write in the Manuscript.tex file to make use of Manuscript.bbl? (Apologies if this is documented in general somewhere) – McDuffin Mar 7 '19 at 17:51
  • To get this to work I found I also had to add the "Manuscript.bib" file to the list of those added via filecontents (perhaps there is a better way) – McDuffin Mar 7 '19 at 18:13
  • 1
    The "Manuscript.bib" file contains the citation database, while "Manuscript.bbl" contains the print-ready citations relevant for the current manuscript. The bbl file is generated via "biber", and this should be done on your local machine. You usually do not want to include your entire database. If you include the "Manuscript.bib" file there is a very real risk that the publisher uses "bibtex" and not "biber", and that may not be what you want. The above code includes "Manuscript.bbl" and not "Manuscript.bib" for precisely this reason. – Jan-Åke Larsson Mar 8 '19 at 16:10
  • 1
    The workflow is as follows: You include the .bib file using \addbibresource{Manuscript.bib}. When you run latex, it gathers information in Manuscript.aux on what entries in the database are actually referenced in the manuscript. You then run biber to produce print-ready citations for these entries in Manuscript.bbl. You then run latex a second time which then automatically uses Manuscript.bbl in the \printbibliography call. The \addbibresouce{Manuscript.bib} call causes \printbibliography to use Manuscript.bbl – Jan-Åke Larsson Mar 14 '19 at 13:08

I fought with this myself for quite a bit, so I thought others might benefit:

IF the journal/repository actually runs biber (e.g. via latexmk) when compiling the document, then there is another simple option available (which is probably also the intended one):

  1. Compile the original document as usual, using also biber. This gives you a file "article.bcf".
  2. Create a .bib file containing only the cited references:

      biber --output-format=bibtex article.bcf 

    The outputfile should be named "article_biber.bib".

  3. Enter "article_biber.bib" as a bibresource instead of your full library in "article.tex".
  4. Send "article_biber.bib" along with the other files to the journal.

Note that biber version 2.9 is known to have a bug with the above output option. This is fixed in biber version 2.10. The binaries can be found here.

Biblatex has been around for quite a while now and has become somewhat established, so I think it is reasonable to ask of the journals/repositories to be able to handle it.

  • Note that bbl files are temporary and have never been intended to be embedded directly into the document. Using them as a replacement for bib.files is therefore susceptible to version conflicts and results in all kinds of other issues. – user510186 Jun 4 '19 at 21:57
  • 1
    However, pasting the bbl file (from bibtex) into the final tex document is the official (and least painful compared to other options, of which I fail to recollect any in the moment) way of doing it for some journals. Basically, they have no bibtex on their servers at all. – Oleg Lobachev Jun 4 '19 at 22:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.