Graphic Arts Media

Killer costing II: the internal cost killers

Would you choose to enter an industry where you were all but guaranteed to lose money? The obvious answer is no, unless you’re a printer. I have been fortunate enough to attend many a printer’s banquet and hear many speeches at such banquets. While I forget the speaker, I will never forget this saying: “the best way to make a small fortune in print is to start with a large fortune.” You may think your financial situation is beyond your control and blame events outside your company. Instead, try considering some of the things within your control which may negatively affect your bottom line.

Many printers operate on the 80:20 principal of business distribution—80% of revenues come from 20% of clients. Pleasing those clients is thus essential to continued success. Unfortunately, clients are too–easily swayed by lower prices for anyone to bank on their continued business.

In response, some printers diversify their product and service offerings in an attempt to gain more clients, while others narrow their focus, trying to retain existing clients. The first approach is harder initially, but has better long–term prospects. Set your growth and profit goals before deciding what direction to take your company, and envision the long–term consequences of your decisions.

While many printers worry about who is selling what to whom for how much, I rarely see their internal costing addressed. Many printers set their Budgeted Hourly Rates (BHRs) by industry standards, rather than actual production outputs. I interned with a company whose actual daily output was just over half of their presumed output—a fact I was able to highlight in a costing study. And they wondered why everything was always late.

Knowing your BHRs from a timing and costing standpoint shows you where you are making or losing money. Low BHRs will not necessarily make you more competitive—you must make money to stay in the industry. Using industry rates as a benchmark is fine, but don’t set your rates so that you are taking jobs which lose you money.

While your own BHRs are important to how you conduct your business, I shake my head at companies that use fake equipment in their estimating. The ghost press is something I have seen at a few companies, and I completely endorse it when trying to understand a competitor’s pricing. But from the perspective of your costing, a ghost press is a surefire cost killer: you’re trying to base your production on a scenario that you’re unable to reproduce. It’s not surprising that most Ontario printers report –0.5% annual profit.

Ghost pressing is a valuable tool for gauging what competitors are doing, but you are agreeing to not make money anytime you extend these prices to a client. How much are you willing to spend out of your pocket to keep people busy?

Another too–common practice is agreeing to produce a job before you have seen one piece of information on it. Or, even worse, agreeing to a price before seeing the job. I rarely see jobs that exactly match their quoted specifications. By entering into such a verbal contract you are accepting all the potential hardships that could come along with the variances in the job. You are also in a position to profit greatly if the job turns out to be easier than expected. The former is definitely more common, though—review your quote once you have all the information and leave yourself wiggle room so you can make a profitable bid.

After reading the above, you can see that you do have the power to make your bids more profitable. Unfortunately, there is still no regulatory board to lead printers toward profitability. And even if there was, they could only help—there are still factors hurting our bottom line that are truly beyond our control. More on those next month in “The external price killers”.

Johnathon Anderson
johnathonanderson@graphicartsmag.com


Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /var/www/easywp-plugin/wp-nc-easywp/vendor/wpbones/wpbones/src/Database/WordPressOption.php:141 Stack trace: #0 /var/www/easywp-plugin/wp-nc-easywp/plugin/Http/Varnish/VarnishCache.php(296): WPNCEasyWP\WPBones\Database\WordPressOption->set() #1 /var/www/wptbox/wp-includes/class-wp-hook.php(308): WPNCEasyWP\Http\Varnish\VarnishCache->doPurge() #2 /var/www/wptbox/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters() #3 /var/www/wptbox/wp-includes/plugin.php(517): WP_Hook->do_action() #4 /var/www/wptbox/wp-includes/load.php(1124): do_action() #5 [internal function]: shutdown_action_hook() #6 {main} thrown in /var/www/easywp-plugin/wp-nc-easywp/vendor/wpbones/wpbones/src/Database/WordPressOption.php on line 141