There's also HireFire, which has support for scaling all your Heroku process types, not just your web processes: http://hirefire.io/ .
I've used them for a few projects which honestly have never actually needed auto-scaling, but they're very easy to use overall and at $10/month are way underpriced. They do have a slower polling frequency (1 minute instead of 15 seconds) though.
HireFire is fantastic (can't recommend it enough for people using Heroku). We use it at backstitch (http://backstit.ch) and it has saved us a ton of cash early-on.
This reduces H12 errors because the more concurrency you have in a single process the less likely it is that Heroku's random routing layer is going to send a request to a dyno that is unable to handle the request because it's busy handling another long running request. As long as long running requests are the exception and not the rule, this should solve the problem.