PDF Export Single Pages

Script for Adobe InDesign
Latest update 12/17/2023, version 4.9

Export an InDesign document to single-page PDFs using a selected PDF Preset. Much of my workload is magazines and books, projects that demand working in single pages because of the many page corrections over the lifetime of the project. Exporting the entire document every correction is not only a waste of time, it means regenerating PDFs of approved pages—a risk of error I’d rather avoid. Existing tools to generate single pages did not meet my specific desires, so I wrote my own script, shared here to help others with similar needs.

  • Page labels at the beginning or end of output file names
  • Absolute (document) numbering or by section
  • Set minimum digits to prefix section and page labels
  • Preview output file name before proceeding
  • Export all pages, a single page, or any range or ranges of pages
  • Export using any PDF Preset
  • Immediate or background export
  • Save and restore all settings
  • User-configurable localization
PDF Export Single Pages
Help me keep making new scripts by supporting my work. Click the PayPal button to contribute any amount you choose. Thank you. William Campbell

How-to Video

How to use the script

The interface has four sections: File naming, Preview, Output, and Settings. Set desired options then click OK button to begin. A progress bar is displayed as pages are exported.

Section 1: File naming

Base name — defaults to the InDesign document name without file extension and may be revised to any value provided it is a valid file name. Do not include extension; “.pdf” is added to the base name and unique label for each page exported. For saved settings that include base name, the value from the settings is used rather than the default. Use the Reset button to restore the default.

Reset — restores base name to default (document name without extension).

Page label at — the choice to begin the file name with the label, or end the file name with the label.

Separator — any characters to insert between the base name, the section label, and the page label. Default is a single underscore.

Numbering: Document — pages are labeled by their sequence in the document (absolute numbering). Sections and how page numbers appear in the layout are ignored. The first page of the document is always labeled 1, the second is always labeled 2, etc., until reaching the last physical page of the document. For example, “basename_001.pdf” (first page of the document).

Numbering: Sections — pages are labeled by section and page number as it appears in the layout. For example, “basename_01_001.pdf” (section 1, page 1). Section labels are not the textual prefix assigned to sections of the document, rather Arabic numerals representing their sequence in the document, beginning at Number sections starting at (see below for more details). Page labels are Arabic numerals equivalent to the page number as it appears in the layout. For example, page “8” is labeled 8, as well as page “viii” is labeled 8. When a new section begins, the section label is incremented, for example, “basename_02_001.pdf” (section 2, page 1). And so on.

Whether numbering by document or by section, the goal is to produce single-page PDFs that sort naturally in the intended order. Otherwise, when flowing pages into a prepress workflow, the operator has to manually position pages in the run list, which is prone to error. The added benefit of section numbering is that page labels match the page numbers as they appear in the layout, which also reduces confusion and the potential for error.

Minimum digits — controls how section and page labels are prefixed with zeros to become a minimum number of digits. This prevents the erroneous file sorting behavior still present in some systems, in which 10 precedes 2 because 1 precedes 2, even though 10 is greater in value. By adding a prefix of zeros, the same example instead becomes 002 and 010, which sort correctly in any file system.

Minimum digits for sections and pages may be adjusted to any value provided it is no less than the document requires. For example, if a document contains 100 pages, it is not possible to set the minimum digits for pages to less than 3. The same applies to section labels.

Include section label — when the document contains multiple sections or alternate layouts, a section label is required, otherwise output of pages of the same sequence number within a later section would overwrite pages from prior sections. In this case, Include section label is enforced (checked but disabled so that it may not be unchecked). The choice to disable is available only when the document contains a single section and no alternate layouts.

The option to exclude a section label is useful when a project is broken into separate documents, each a single section, but each is a unique range of page numbers. Once all combined, the project becomes a continuous page range, making section labels unnecessary. In such a case, there is no harm in having a section label, but it is excess and may not be desired.

IMPORTANT: the script has no means to know if multiple documents from a single project have overlapping page ranges. Ignoring this could lead to overwriting pages that mistakenly share the same number, regardless of including a section label or not. For such a project, first ensure each document uses a unique page range that makes sense once combined — no pages with the same number, and no gaps in the page number sequence.

Number sections starting at — the number applied to the document’s initial section, which is then incremented each section that follows.

Section 2: Preview

An example output file name based on the current choices. As options change, the preview will update to show a new example. The example represents the first page of the inDesign document. The value set for pages to output, whether all or a range, is not reflected in the preview.

Section 3: Output

Folder — the folder to which PDF pages are exported. Default is the folder where the InDesign document is located, unless saved settings are loaded that include a specific output folder.

Pages: All or Range — controls whether to export all pages of the document, a single page, or any range or ranges of pages. For a single page or a range, the normal InDesign rules for identifying pages are recognized. Use section and/or alternate layout prefixes combined with the page number as it appears in the layout, or enter the plus sign followed by the absolute page number. Separate the first and last pages of a range with a hyphen, and separate multiple pages or page ranges with a comma.

PDF preset — the PDF preset used to export the pages.

Replace existing output files — when enabled, existing output files are replaced. When disabled, the user is asked to confirm the replacement.

Export in background — when enabled, PDFs are queued to export in the background and the script ends sooner. When disabled, each PDF page is exported immediately and the script is active until exporting all PDFs is completed.

Section 4: Settings

The current options may be saved and restored later. Select from the Load drop-down list to choose saved settings, and the current options are updated. Click the Delete button, and the saved settings selected in the Load drop-down list are permanently removed. Click the Save button, provide a name for the settings, and the current options are preserved. If the name already exists, the user may choose to replace the saved settings. Or click the checkbox Replace settings, and choose the settings to replace.

The script provides default saved settings named [Default]. These settings cannot be deleted but may be updated to the current values. Save settings, click the checkbox Replace settings, and choose [Default].

When settings are saved, there is also the option to include Base name and/or Output folder.

PDF Export Single Pages save settings

Each time the script is launched, the base name defaults to the InDesign document name without extension, and the output folder defaults to the location of the InDesign document. To override these defaults, enable the options to include Base name and/or Output folder. Then when the saved settings are loaded, the base name and/or output folder are restored to the values set when the settings were saved. This includes the next launch of the script, as the last settings selected are also restored.

IMPORTANT NOTE: because of the script functionality to retain Base name and/or Output folder, these values from the last settings used may not be desired. To restore base name to default, click the Reset button right of the base name input field. To override the output folder, manually select the desired folder. You may also change both values by selecting other saved settings. As well, the built-in [Default] settings restores the default base name and output folder.


By default the script language is US English, which does not require further download or configuration. To have the script interface display other languages, choose from the available languages below. Download and copy the .i18n file to the script folder alongside the script. When launched, the script detects the language file and displays interface text in that language. If your language is not listed, download the English file and translate it. The file is plain text formatted as JSON, containing interface text in English, and a second value for its translation, which for the English file is the identical text. Copy the file and rename it to replace “en” with the relevant code for your language, then edit the file to change each line’s second value to the translation in your language. For more detailed instructions of how to edit and install i18n files, see How to Localize Scripts.

English: pdf-export-single-pages-en-i18n.zip

Polish: pdf-export-single-pages-pl-i18n.zip

Spanish: pdf-export-single-pages-es-i18n.zip

Help me keep making new scripts by supporting my work. Click the PayPal button to contribute any amount you choose. Thank you. William Campbell
PDF Export Single Pages

Change log: pdf-export-single-pages.txt

For help installing scripts, see How to Install and Use Scripts in Adobe Creative Cloud Applications.

IMPORTANT: scripts are developed for the latest Adobe Creative Cloud applications. Many scripts work in CC 2018 and later, even some as far back as CS6, but may not perform as expected, or run at all, when used in versions prior to 2018. Photoshop features Select Subject and Preserve Details 2.0 definitely fail prior to CC 2018 (version 19) as the features do not exist in earlier versions. For best results use the latest versions of Adobe Creative Cloud applications.

IMPORTANT: by downloading any of the scripts on this page you agree that the software is provided without any warranty, express or implied. USE AT YOUR OWN RISK. Always make backups of important data.

IMPORTANT: fees paid for software products are the purchase of a non-exclusive license to use the software product and do not grant the purchaser any degree of ownership of the software code. Author of the intellectual property and copyright holder William Campbell retains 100% ownership of all code used in all software products regardless of the inspiration for the software product design or functionality.