Contents
A Revit output management tool picks the sheets for an issue, checks them before export, writes the PDFs and DWGs under the office's naming rule, marks the revision as Issued, and adds a row per sheet to the drawing issue register. Revit has most of these pieces. They just live in separate dialogs that don't know about each other.
One plugin the studio built took a process from about 2 weeks, sometimes closer to 1 month, down to about 10 minutes. Its entire visible interface is one button. A simple interface is compressed history, not a lack of depth. An output tool is the plainest case of it. The Issue button hides six separate jobs, each of which used to be done by hand, each with its own way to go wrong.

What Revit gives you for output without an add-in
Revit has three pieces. The first is the View/Sheet Set, saved in the print and export dialogs, which holds a fixed list of sheets. The second is direct PDF export, added in Revit 2022: sheets go out as separate files or one combined file, and a naming rule built from sheet parameters is saved with the export setup.
The third is the Sheet Issues/Revisions dialog. Each revision carries a date, description, and who it was issued to and by. Once it's marked Issued, its information can't change, it can't be assigned to new revision clouds, and its existing clouds can't be edited. All three pieces exist. None of them talks to the others. The sheet set doesn't check revision status, and the PDF export keeps no record of what went out.
File names that stay traceable after they leave
The file name is the one part of a drawing that always travels with it. A common pattern is project number, sheet number, sheet name and current revision. Revit's naming rule can build that. On a fresh project, though, sheets with no revision yet feed an empty value into the rule, so the rule needs a fallback for that case.
Offices working in Persian hit a second problem. Persian sheet names in file names come out as unreadable characters in some archive, zip and email systems. The safe fix is to build file names from numbers and Latin codes only, and keep the Persian sheet name in the register and on the drawing itself.
The drawing issue register and the transmittal

A transmittal and an issue register are different documents. The transmittal is the covering note for one issue, useful for about as long as that issue is current. The register is the cumulative record of every issue on the job, and it gets opened for the life of the building. You can rebuild any transmittal from the register. You can't do it the other way round.
The register's one rule is that it only grows. A sheet issued four times has four rows, not one row edited four times. Each row holds sheet number and title, revision, status, date, recipient and purpose. In Iranian offices those dates are Jalali, while Revit stores a revision date as free text with no format of its own.
What a Revit output management tool actually does
A good one takes the office's rules once, then runs these steps in order on every issue:
- Select sheets by rule: for example, every sheet in a discipline with a new revision, instead of a fixed set someone has to keep current.
- Check before export: sheets with no revision, empty title block fields, sheets with no views placed, revisions not yet Issued.
- Export PDF and DWG under the office naming rule, into a folder named by date and issue number.
- Mark the revision Issued, only after every file has been confirmed.
- Append register rows to the office's Excel file or database, one per sheet.
- Build the transmittal from those same rows, with the file list attached.
The order matters. Mark the revision Issued before the export is confirmed, have one sheet fail, and the register now records an issue that never happened.
A partial export is worse than a failed one
The Revit API's PDF export method returns False if any view fails, even if the others were written. That result doesn't say which sheets are missing. A tool that only reads it either reports the whole issue as failed, or treats an incomplete set as complete.
An output tool has to check for each expected file on its own after export, and report which sheets succeeded, which failed, and why. Nothing drops out of an issue silently. A set that's one sheet short doesn't go into the register until it's whole.
An off-the-shelf add-in, a Dynamo graph, or a custom plugin
If your office issues once or twice a month, Revit's own PDF export with a saved naming rule and a plain Excel register will do. You don't need us, or anyone like us, for that. Commercial add-ins such as ProSheets, Xrev Transmit and RTV Drawing Manager also cover batch export and transmittals, and they're enough for a lot of offices.
A custom plugin earns its cost when the register has to feed a document management system, office correspondence or a management dashboard, or when rules like Jalali dates, Persian names and the office's own status codes aren't supported off the shelf. Sheet order and numbering are a separate problem, covered in the sheet sorting article. A tool like this is the kind of work our custom Revit plugin development covers.
Conclusion
A Revit output management tool turns sheet sets, file export, revision status and the issue register into one process. From outside it's a button. Behind it is an ordered set of checks that decides what went out, when, and to whom. What's the first thing you'd want to change? Tell us about the workflow.
FAQ
Can Revit batch export PDFs without an add-in?
Yes. Since Revit 2022, sheets export straight to PDF, as separate files or one combined file, with file names built from sheet parameters by a saved naming rule.
What does marking a revision Issued do in Revit?
Its information can no longer change, it can't be assigned to new revision clouds, and its existing clouds can't be edited. To change it, untick Issued, edit, and tick it again.
What's the difference between a transmittal and an issue register?
A transmittal covers one issue. The register is the record of every issue on the job and only ever gains rows. Any transmittal can be rebuilt from the register.
Why keep Persian sheet names out of PDF file names?
Some archive, zip and email systems turn Persian file names into unreadable characters. Build file names from numbers and Latin codes, and keep the Persian name in the register and on the sheet.
How does an output tool catch a partial export?
The Revit API export method returns a single False if any sheet fails. The tool checks for each expected file on its own and reports the failed sheets with the reason.
When don't you need a custom output tool?
When issues are infrequent and an Excel register is easy to keep. Revit's own PDF export or a commercial add-in will do.