Disclosure: Purplelink makes ModernTex, a Mac LaTeX editor. It is mentioned once, near the end, and only for what its export does today. Everything else here applies to any editor.
The short answer
- Make a copy of the project. Work in the copy so your real project keeps its folders.
- Flatten it. Move every
.tex,.bib,.bbl,.bst,.cls,.styand figure file into one folder. Delete the folder names from\includegraphics,\input,\includeand\bibliographypaths. - Add the
.bbl. It is the bibliography your build already generated (a list of formatted references). Journal systems often cannot rebuild it from your.bib. - Compile from the flat copy. If it builds there with no errors, the journal's system has the best chance of building it.
- ZIP the files, not the folder. Open the ZIP listing and confirm it has no folder entries.
What the publishers say
I read each page below on October 15, 2026. The table keeps to what the pages state, and the next sections explain how to meet each rule. Journals also publish their own author instructions, which win over the general pages here.
| Rule | Elsevier (Editorial Manager) | Springer Nature | arXiv |
|---|---|---|---|
| Subfolders | Not processed. All files sit at the same folder level, and archives with subdirectories cause failures. | Keep all files in a single directory. Subfolders cause missing figures. | Allowed. The main file may sit in the root or a subdirectory, and compilation runs from the submission root. |
| Figure paths | File name only, such as alld.eps, not images/alld.eps. |
Local file name only, such as figure_1.jpg, not a full path. |
Relative to the submission root. No on-the-fly figure conversion, so convert EPS to PDF yourself for pdfLaTeX. |
| Bibliography | Either a .bib with \bibliography, or the .bbl included with \input{filename.bbl}. Use the .bbl if the bibliography does not appear. |
Upload a .bbl or .bib plus the .bst. Pasting the .bbl contents into the main .tex is called the most reliable method. |
A .bbl is used if present, and its name must match the main .tex file. Without one, arXiv needs the .bib and picks the bibliography program itself. |
| TeX Live on their side | The page does not state a version for Editorial Manager. | Editorial Manager 2018, eJP 2017, Snapp 2021. | 2025 (default) or 2023. |
| Archive | ZIP or tar.gz. RAR is not supported. | Snapp needs a .zip. |
A (possibly compressed) .tar or .zip. |
| Engine | Tries LaTeX first, then pdfLaTeX. XeLaTeX works with a first-line comment (below). | Snapp must compile with pdfLaTeX. | For pdfLaTeX, figures must be PDF, PNG or JPEG. |
Three observations from the table. First, Elsevier and Springer Nature both require the flat folder, so one flat ZIP meets both. Second, arXiv accepts folders, but a flat ZIP is also valid there, so the flat copy is the one package you can reuse for all three. Third, only Springer Nature names the TeX Live years it uses, and they are older than the TeX Live on a current Mac, so package versions can differ between your build and theirs.
What goes in the ZIP
Include only what the build reads. For a typical manuscript that means these files.
- Source: the main
.texfile and every file it pulls in with\inputor\include. - Bibliography: the
.bbl, and the.biband.bstif the journal asks for them (Springer Nature does, when you upload a.bib). - Class and style files: any
.clsor.stythe journal's template needs that is not in TeX Live. Elsevier's page says a.styfile is required for compilation, and to upload it as a Manuscript item if it is missing. - Figures: every image the paper uses, in a format your engine reads.
Leave out .aux, .log, .out, .synctex.gz, the compiled PDF of your own manuscript, and any backup copies. arXiv's page says it removes auxiliary and output files named after your source automatically, with .bbl and .ind as the exceptions, and asks you to exclude unused files. The two commercial pages do not say what they do with them, so leave them out there as well.
File names matter too. Elsevier's page asks for one period per file name (fig1.eps is valid and fig.1.eps is not), excludes names with special characters such as G+.eps, and excludes reserved Windows names such as NUL and CON. It also says not to give a PDF and a LaTeX file the same base name. Its page adds that .tif files cannot be used inside \includegraphics. Convert those to PNG or PDF.
Generate the .bbl
A .bbl file is written by BibTeX or Biber (the programs that turn a .bib database into formatted references) each time you build. It sits next to your main file and is named after it, so paper.tex produces paper.bbl. Follow these steps.
- Compile the project completely: LaTeX, then BibTeX or Biber, then LaTeX twice more.
latexmk -pdf paper.texdoes all of that. - Confirm the PDF shows numbered or author-year citations, not question marks.
- Copy
paper.bblinto your flat folder.
Then choose one of two ways to use it, depending on the system.
- Include it by name (Elsevier). Replace
\bibliography{refs}with\input{paper.bbl}, keeping the\bibliographystyleline only if your template needs it. This is Method B on Elsevier's page. - Paste it into the main file (Springer Nature). Comment out the
\bibliography{...}line and paste the contents of the.bblin its place. Springer Nature's page calls this the most reliable method for both Editorial Manager and eJP. - Leave it beside the main file (arXiv). Name it after the main
.texfile, and arXiv uses it. If you use biblatex, the page says the.bblmust come from the same backend that builds the document, Biber or BibTeX, and arXiv's page lists the.bblformat each TeX Live release accepts. Build with the TeX Live year closest to the one you submit to.
A .bbl is a snapshot. If you edit the .bib or change a citation afterwards, rebuild and replace the copy, or the ZIP carries stale references.
Flatten the folders and fix the paths
Say your project looks like this.
paper.tex
refs.bib
sections/intro.tex
sections/methods.tex
figures/fig1.pdf
figures/fig2.png
Copy the project, then move everything into the top folder. Check for two files with the same name in different folders (for example two results.png files) and rename one before you move it. Then update every path that pointed into a folder.
\input{sections/intro} becomes \input{intro}
\input{sections/methods} becomes \input{methods}
\includegraphics{figures/fig1} becomes \includegraphics{fig1}
\includegraphics{figures/fig2} becomes \includegraphics{fig2}
Search the main file and each section file for four things: \input, \include, \includegraphics and \graphicspath. A \graphicspath{{figures/}} line hides the folder in the figure commands, so delete it too. Also check template files that load a logo or a data file by path, and \addbibresource if you use biblatex. Compile again. Any "file not found" error names a path you missed.
The engine and the old TeX Live
The journal compiles your files with its own TeX Live, which may be several years older than yours. Springer Nature's page lists 2018 for Editorial Manager, 2017 for eJP and 2021 for Snapp. A package released after that year can build on your Mac and fail there. Three habits reduce the risk.
- Use the journal's template. It was written for their system.
- Avoid very new packages and options. If the build log on their side names a missing package, look for an older equivalent or ship the
.styfile in the ZIP. - Read their log. Elsevier's and Springer Nature's Editorial Manager both return an error log when conversion fails. The Elsevier page says to open the submission PDF from "View Submission", and a failed build shows the TeX error codes there.
For engines, Elsevier's page says Editorial Manager tries LaTeX first and then pdfLaTeX, and that XeLaTeX works if line 1 of the .tex file is %!TEX TS-program = xelatex. Springer Nature's Snapp compiles with pdfLaTeX only, so a LuaLaTeX or XeLaTeX project needs a pdfLaTeX-compatible preamble there.
Do it from Overleaf
Overleaf's documentation (read October 15, 2026) separates three downloads, and the first one is not enough for most journals.
- Source ZIP. File, then Download, then Download as source (.zip). It holds the source files only. It does not include the PDF, and Overleaf says the generated files are left out.
- Submission ZIP with the .bbl. File, then Submit, then pick a journal or service and select Download project ZIP with submission files. Overleaf says this ZIP includes the
.bbland is in the format arXiv expects. It does not submit anything. If your project uses a journal template, the Submit menu may show only that journal, and Overleaf says to make a copy of the project to see every option. - The .bbl alone. Click Logs and output files beside Recompile, scroll to Other logs and files, and download
output.bbl. Overleaf's page gives the same steps for pasting its contents into the main.texfile.
Overleaf's documentation does not say that either ZIP flattens your folders. Unzip it and look. If it has folders and your journal is Elsevier or Springer Nature, flatten it as described above. Elsevier's page also notes that Overleaf produces a PDF even when there are errors, so read the compile log for warnings before you export.
Do it from a Mac
Any editor works, because the rules apply to the files and not to the program that wrote them. These steps use only built-in tools.
- Duplicate the project folder in Finder.
- Flatten the copy and fix the paths as above, then build it with
latexmk -pdf paper.texin Terminal. - Delete the build files:
latexmk -cremoves most of them and keeps the.bbl. - Make the ZIP from inside the folder, so the archive has no folder entry. In Terminal, run
cdinto the folder, thenzip -X ../submission.zip *. - Check the contents with
unzip -l ../submission.zip. Every line should be a file name with no/in it.
I used zip -X on purpose. I made a test archive with ditto, the command-line tool that produces the same kind of ZIP as Finder's Compress, from a folder whose files carried macOS extended attributes. The archive held the folder itself plus a __MACOSX folder of ._ files. I did not click through Finder, and I did not try uploading such an archive to a journal. A folder entry is, however, the thing the Elsevier and Springer Nature pages say to avoid, so check the listing before you upload. The zip -X archive from the same files held only the two files.
ModernTex's submission export builds a ZIP of the manuscript without build files, and it is built for blind review, not for these systems. In the source I read on October 15, 2026, it keeps subfolders and leaves out the .bbl, so it does not produce a journal-ready ZIP for Editorial Manager. Treat its output as a starting point and apply the steps above.
Checklist
- The ZIP holds only files, with no folder entries and no
__MACOSXfolder. - The main
.tex, the class and style files, and every figure are inside it. - No
\includegraphics,\inputor\includepath contains a folder name. - The
.bblis current and either pasted into the main file or included by name. - File names have one period, no special characters and no duplicates.
- Figures are PDF, PNG or JPEG. EPS and TIFF have been converted.
- The project builds from the flat folder with no errors in the log, not only a PDF.
- After upload, you opened the PDF the system built and read it page by page.
Common causes of a rejected or broken build
- Question marks where figures or tables should be. Elsevier's page ties this to archives with subdirectories. Flatten and re-upload.
- Question marks in place of citations. The bibliography file was not used. Springer Nature's page lists a missing
.bib,.bstor.bbl, or a.bblthat the main file never imports. Elsevier's page says incorrect bibliography formatting. Paste the.bblinto the main file. - A missing file error. Springer Nature's page gives
trackchanges.styas an example. Put the file in the ZIP, and match the name and case exactly. - An EPS figure that fails. Elsevier's page says EPS files may fail, and that those with embedded fonts are not processed. Convert to PDF or PNG yourself.
- An unrecognized
.bblon Springer Nature's eJP. The page says to copy the\bibitementries into the bibliography environment in the main file and check that every key matches its citation. - Boxes or broken text. Springer Nature's page says this usually means special characters were not converted to TeX code, such as
\"afor an umlaut. - A package that builds for you and not for them. See the TeX Live section above.
Last checked
October 15, 2026. Every rule above was read on that date from these pages. Publisher rules change, and a journal's own author instructions can differ, so check them before you upload.
- Elsevier: How to submit a LaTeX file in Editorial Manager (page dated May 4, 2025).
- Springer Nature: LaTeX author support.
- arXiv: Submitting TeX/LaTeX.
- Overleaf: Downloading a project, Generated files and Checklist for arXiv submissions.
- ModernTex: the product page, and its export source file
SubmissionExportService.swift, which I read on the same date.
I did not cover IEEE or ACM. ACM's author pages returned an access block when I tried to read them, and I found no IEEE page that states rules for LaTeX source ZIPs. If something here is out of date or wrong, write to ben@purplelink.llc and I will fix it.