What are citation keys and how can they be used?

The citation key is used alongside a BibTeX file by people writing in LaTeX and similar environments. The keys are placed in \cite commands which are converted to the correctly formatted citation when the document is compiled. They also make it possible to write your paper in any text editor before compiling it.

The citations keys will do nothing in a Google Docs where we do not check for them.

Hi @jason, could you define how the cite key is generated for a reference in Paperpile? I see details in the reference are used to create the cite key, but could you tell specifically what the algorhythm is?

The algorithm is not deterministics; in general we use authorYYYY when author last name and publication year are available, or anonYYYY when only the year is available. However, we then append two random letters, so you get something like shona2019-ri. We do this to avoid duplicate citekeys in the library (so not entirely random either as we check the generated letters against what is already in the library).

As they are non-deterministic, it is usually best to copy the citekey (Ctrl + K) or cite command (Ctrl + Shift + K) from the Paperpile interface, rather than try to guess/remember the citekey when writing in Latex.


Hi Jason, just picking up on this. I would use Paperpile if the citation keys did work in Google Docs. I would:

[1] Write in Scrivener (or whatever… but not LaTex) and export as, say, .rtf
[2] Open the .rtf in Google Docs
[3] From the menu, Paperpile > Format Citations

I would expect Paperfile to change the citation key in the text to an in-text citation and also to generate a bibliography.


I really wish this was possible as well… I could use Ulysses then!

@kynan @Kerim Actually we want to go one step further. There is a reason why we invested so much in our “Word” plugin and developed it as a generic desktop app for Windows and macOS instead of a sidebar add-in for Word.

The goal is to automatically generate and insert citation codes for use in Markdown (Bear, Ulysses, Notion, …) and other systems like Scrivener in a generic way.

Clearly, in such a workflow the last step would be to convert those codes to the final citations and bibliography.

I assume as end product when writing with Scrivener or Ulysses a Microsoft Doc format would be acceptable?


That sounds great, but would it require having Microsoft Word installed?

There are various scenarios and it depends on the specifics of the product (Bear, Ulysses, Scrivener,…) :

  • If the product exports to Word and you have Word isntalled, you could open the doc file and run our word plugin over it to get the final bibliography (which remains completely editable through the word plugin of course). That’s trivial as we do exactly that already for Zotero and Mendeley citation codes.

  • Another way would be to process the markdown file directly and replace the codes with plain text citations and a plain text bibliography. You could then either re-import to your product (if it supports it) or convert to any other format with other tools. That would not require word to be installed.

Actually it would also be possible to replace the codes with BibTeX codes and convert the markdown to LaTeX. I would assume that products already can export to LaTeX and there is always Pandoc.

Our “Word plugin” = “desktop citation app”, syncs all your library to your local computer so we can easily write a BibTeX file.

How about exporting the file from Ulysses as a word doc with the codes still unprocessed, uploading to Google Docs and processing it there?

Yes, that’s also a possibility.

1 Like


The solution that you pointed out would be fantastic. In the end, people write in Scrivener but the final draft is usually completed in Microsoft Word.

Hi Stefan, has there been any further development on the use of citation keys? I would like to use Pages and inserting citation keys would be easy if they could be auto converted in google docs to paperpile citations.

One undocumented use is that the string returned with ctrl-K can be used to search for the item later. I use it for my internal notes - eg “my summary text (Nauman2015-yh)”. The I can search for “Nauman2015-yh” in Paperpile later to retrieve the reference, or in the Paperpile popup in Google Docs to quickly insert the reference in a doc.


We have been thinking about Markdown a lot lately and we are getting serious about all those integrations mentioned in this thread.

In addition to what we’ve already learnt from you in previous discussion, we invite you to fill out a small survey to help us better understand the use cases and workflows for those Markdown based products:


hi Stefan.

I just completed your survey, and then thought a bit more, and concluded that would help most for the workflows I use is if Control+K were to optionally combine with “Share via Link or Email” and copy to clipboard the Markdown to link that citation, e.g.:

[Doctorow 2019](https://paperpile.com/shared/0jpweN)

(Unless there’s a way to do something like this already? I’m on a linux/pandoc/latex platform.)

Thanks, best

1 Like


Any progress on this front? I look forward to seeing the integration between paperpile and scrivener.

No relevant updates to share yet, @Jose, but developing a generic citation workflow for any word processor is still very much on our radar. We recently released betas for automatic BibTex sync and Overleaf integration and are currently in the process of rewriting our extension and UI.

Thanks Vicente. It would be good to put the development of a generic citation workflow a top priority for Paperpile.

Good day – I read the above; here’s what I did but it’s not working. Maybe I misunderstood. Working in Ulysses I copied citation keys (e.g., "Skinner1945-qt, Skinner1988-ka, Dvorsky2014-en, Sherman2010-bn) into a document. Then I opened the document in MS Word. I get the message that no Paperpile references could be found.