Introducing RPM Remote Print Manager

RPM Remote Print Manager is our print server software

RPM Remote Print Manager® (RPM) is print server software for Windows platforms, which offers many print workflow capabilities. Brooks Internet Software has published and supported this software since 1995.

Printing manager

We have customers who use RPM to manage their printing process on up to 1,000 printers. They use RPM to specify how many concurrent print jobs each printer can receive at a time. If a printer goes offline, RPM will pause further jobs until the printer error recovers.

For other customers, their definition of printing includes generating a hard copy for the customer across the service desk, plus a PDF for the accounting system. RPM manages all these tasks.

Alongside our print server functions, RPM is a competent printing manager software.

Print server software

RPM supports the LPD and telnet protocols (or port 9100) like other network print servers. We believe you will find our support for these protocols to be complete. RPM also supports folder watcher operations. Customers have been relying on us for better than 20 years. Read more on network connectivity

Bridging systems

One of RPM’s important distinctions is its ability to bridge systems which can't communicate with each other. Almost every computer system can print, but not every system can support all you need to do. RPM has a track record of helping customers and partners make that work. Read more on systems we have successfully bridged.

Virtual printer

We overheard a customer calling RPM a virtual printer; it turns out that we agree. When we tracked down the definition, we found that it offers a small tour of RPM’s core capabilities. Read more about virtual printers.

Our quote of the day on virtual printers:

you print to a virtual printer exactly as if it were a printer, but the result you get is open-ended.


RPM can, of course, pass your data unchanged to an output of your choice. Often, though, people rely on us to make changes to their data. We can add, remove, search and replace, generate banner pages, and translate to a new format. Read more about our data translations.

RPM produces multiple outputs

RPM offers many types of output including printing, running a local program, email and more. One thing that sets RPM apart is that it can apply any number of transformations to a given job. For instance, you can send print jobs to several printers from different vendors, at the same time archive as a PDF.

Within RPM we can append your print job to an existing file. Using a third party program which comes with RPM, we can even merge a PDF file into an existing PDF. RPM can print and save a job to disk in one pass (useful when importing into a document management system, for instance).

There is no limit except how much you want to do, depending on your RPM license.

RPM uses your print job to control outputs

The LPD print protocol provides information about your print job from the requesting program. RPM gives you access to this data when you configure your outputs. This page discusses how that works.

RPM can also extract text data from your print job (depending on what you send) and use that data. You could pull an email address from the print job and send the entire result to that address. A more common approach might be to use an account name for an archive file name. You can read more about controlling outputs here.

RPM Print Workflow

RPM gives you a lot of flexibility for processing your print jobs. The setup we make available in a single queue can help you solve a lot of problems.

But, we also provide the means to send a print job to another queue. You can think of it like programming a manufacturing system:

  • do work at one station
  • then send the unit to the next station to do more work

Our example of printing and saving a PDF copy works like that.

Data extraction

RPM Elite recently gained the ability to extract text data from the current print job and use the values as LPD metadata. We talked about this topic on the page RPM uses your print job to control outputs. With many of our actions, you have the opportunity to use metadata, for instance as an archive filename or email address. Now you can use data imported directly from your print job. You can read about data extraction and be sure to check out the video.

Dynamic job routing

If you have read our section about print workflow, you've seen how the Copy to Queue action can be used to stage processing, grouping work to keep you from repeating the same tasks over and over in different queues. Dynamic job routing takes that initiative one step farther by letting you use actual LPD metadata as part of the queue name or job name. We give examples using this with and without data extraction.

Customize your print workflow

RPM is optimized to help you create the print workflow you need. We offer customization services since 2010 where we develop additional software that works with RPM to get the results you need. We have documented a number of the projects we have delivered for customers like you.

If you are a Python developer or have access to one, we have a published API which we host on GitHub. Our user interface is written in Python and uses this API. Our customization projects work the same way.

Windows version support

The page On which versions of Windows does RPM run? details our operating system support, including ongoing support for new and unreleased versions of Windows, plus versions we used to support, but no longer do.