Maximize your miles.
Earn up to 85% of Gross Pay.
I've been an owner operator with JRC Transportation for just a few months, and the consistent freight and impressive income have made my start smoother than I ever expected.
-John D. ★★★★★ - Google Reviews
As a newer driver, I'm thrilled with the steady flow of loads JRC offers. The reliable freight means I can count on an awesome income every week.
-Miguel S. ★★★★★ - Trustpilot Reviews
After 10 years on the road, I can honestly say JRC Transportation is a cut above the rest. Consistent freight and great income.
-Jose B. ★★★★★ - Google Reviews
I drove with JRC for over 13 years. In full disclosure, I had left and came back. I wish I stayed the whole time - They are truly one of the only companies that takes care of you and supports your business.
-Andre R. ★★★★★ - Facebook Reviews
The customer freight and excellent pay have made my transition into the owner operator space very easy.
-Steven O. ★★★★★ - Facebook Reviews
I joined JRC Transportation two years ago, and the steady freight has been a game changer. It’s allowed me to purchase more tractors and increase business for my small fleet.
-William R. ★★★★★ - Google Reviews
If you’re a hard worker - this is the place to work, period.
-James J. ★★★★★ - Google Reviews
Great service, great freight - it was exactly what my wife and I were looking for. They get us home when we need to be home and get us consistent freight when we need that too.
-Jabiel P. ★★★★★ - Google Reviews
jQuery.noConflict();
jQuery( document ).ready(function( $ ) {
// Set object
var jrcObj = $('#JRCDriverCompensationComparisonChartOne');
var jrcFormObj = $('#JRCDriverCompensationComparisonChartTwo');
// Add comma to every three digits of numbers
$.fn.digits = function(){
return this.each(function(){
$(this).text( $(this).text().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,") );
})
}
$('.jrc-comparison-chart .numbersOnly').on('input', function (event) {
this.value = this.value.replace(/[^0-9]/g, '');
});
$('.jrc-comparison-chart .decimalNumbersOnly').on('input', function (event) {
var val = this.value
var re = /^([0-9]+[\.]?[0-9]?[0-9]?|[0-9]+)$/g;
var re1 = /^([0-9]+[\.]?[0-9]?[0-9]?|[0-9]+)/g;
if (!re.test(val)) {
val = re1.exec(val);
if (val) {
this.value = val[0];
} else {
this.value = "";
}
}
});
// Disable cut/copy/paste
$('.jrc-comparison-chart input[type="text"]').bind("cut copy paste", function(e) {
e.preventDefault();
alert("You cannot paste into this text field.");
$(this).bind("contextmenu", function(e) {
e.preventDefault();
});
});
$('#JRCDriverCompensationComparisonChartOne input[type="text"]').on('keydown', function (event) {
// Get grid class name
var gridClassName = $(this).attr('class').split(' ').pop();
// Get gross pay
var grosspay = jrcObj.find('.gross-pay.' + gridClassName).val();
grosspay = parseFloat(grosspay) || 0;
if (grosspay==0) {
var zero = 0;
jrcObj.find('.operator-pay.' + gridClassName).val(zero);
jrcObj.find('span.operatorpay.' + gridClassName).html(zero.toFixed(2)).digits();
jrcObj.find('.total-deductions.' + gridClassName).val(zero);
jrcObj.find('span.totalDeductions.' + gridClassName).html(zero.toFixed(2)).digits();
jrcObj.find('.weekly-take-home.' + gridClassName).val(zero);
jrcObj.find('span.weeklyTakeHome.' + gridClassName).html(zero.toFixed(2)).digits();
jrcObj.find('span.yearlyTakeHome.' + gridClassName).html(zero.toFixed(2)).digits();
if (gridClassName!='grid1') {
jrcObj.find('.admin-cost.' + gridClassName).val(zero);
jrcObj.find('span.adminCost.' + gridClassName).html(zero.toFixed(2)).digits();
}
}
});
$('#JRCDriverCompensationComparisonChartOne input[type="text"]').on('keyup input change', function (event) {
// Get grid class name
var gridClassName = $(this).attr('class').split(' ').pop();
// Get gross pay
var grosspay = jrcObj.find('.gross-pay.' + gridClassName).val();
grosspay = parseFloat(grosspay) || 0;
// Prevent user to enter zero
if (grosspay==0)
return false;
// Calcuate admin costs
if (gridClassName=='grid2' || gridClassName=='grid3') {
var pog_g1 = jrcObj.find('.percentage-of-gross.grid1').val();
pog_g1 = parseFloat(pog_g1) || 0;
var pog_competitor = jrcObj.find('.percentage-of-gross.' + gridClassName).val();
pog_competitor = parseFloat(pog_competitor) || 0;
if (pog_competitor!=0) {
var gp_competitor = jrcObj.find('.gross-pay.' + gridClassName).val();
gp_competitor = parseFloat(gp_competitor) || 0;
var competitoradmincost = ((gp_competitor*(pog_g1-pog_competitor))/100);
jrcObj.find('.admin-cost.' + gridClassName).val(competitoradmincost);
jrcObj.find('span.adminCost.' + gridClassName).html(competitoradmincost.toFixed(2)).digits();
}
}
var admincost = jrcObj.find('.admin-cost.' + gridClassName).val();
admincost = parseFloat(admincost) || 0;
var occ = jrcObj.find('.occ.' + gridClassName).val();
occ = parseFloat(occ) || 0;
var flatbedrental = jrcObj.find('.flatbed-rental.' + gridClassName).val();
flatbedrental = parseFloat(flatbedrental) || 0;
var bobtailinsurance = jrcObj.find('.bobtail-insurance.' + gridClassName).val();
bobtailinsurance = parseFloat(bobtailinsurance) || 0;
var percentageOfGross = jrcObj.find('.percentage-of-gross.' + gridClassName).val();
percentageOfGross = parseFloat(percentageOfGross) || 0;
// Calculate Operator Pay
var operatorpay = ((parseFloat(grosspay) * parseFloat(percentageOfGross))/100);
jrcObj.find('.operator-pay.' + gridClassName).val(operatorpay);
jrcObj.find('span.operatorpay.' + gridClassName).html(operatorpay.toFixed(2)).digits();
// Calculate Total deductions
var totaldeductions = parseFloat(admincost) + parseFloat(flatbedrental) + parseFloat(bobtailinsurance) + parseFloat(occ);
jrcObj.find('.total-deductions.' + gridClassName).val(totaldeductions);
jrcObj.find('span.totalDeductions.' + gridClassName).html(totaldeductions.toFixed(2)).digits();
// Calculate Weekly Take Home Total
var weeklyTakeHome = parseFloat(operatorpay) - parseFloat(totaldeductions);
jrcObj.find('.weekly-take-home.' + gridClassName).val(weeklyTakeHome);
jrcObj.find('span.weeklyTakeHome.' + gridClassName).html(weeklyTakeHome.toFixed(2)).digits();
// Calculate Yearly Take Home
var yearlyTakeHome = parseFloat(weeklyTakeHome) * parseFloat(52);
jrcObj.find('span.yearlyTakeHome.' + gridClassName).html(yearlyTakeHome.toFixed(2)).digits();
});
$('.current-gross-pay').on('keyup input change', function (event) {
// Get current gross pay
var currentgrosspay = $(this).val();
currentgrosspay = parseInt(currentgrosspay) || 0;
jrcFormObj.find('.gross-pay.grid1, .gross-pay.grid2').val(currentgrosspay);
});
$('.desired-gross-pay').on('keyup input change', function (event) {
// Get desired gross pay
var desiredgrosspay = $(this).val();
desiredgrosspay = parseInt(desiredgrosspay) || 0;
jrcFormObj.find('.gross-pay.grid3, .gross-pay.grid4').val(desiredgrosspay);
});
$('.current-percentage-of-gross-pay').on('keyup input change', function (event) {
// Get current percentage of gross pay
var currentpercentagegrosspay = $(this).val();
currentpercentagegrosspay = parseInt(currentpercentagegrosspay) || 0;
jrcFormObj.find('.percentage-of-gross.grid2, .percentage-of-gross.grid4').val(currentpercentagegrosspay);
});
$('.occ-per-week').on('keyup input change', function (event) {
// Get occ per week
var occperweek = $(this).val();
occperweek = parseInt(occperweek) || 0;
jrcFormObj.find('.occ.grid2, .occ.grid4').val(occperweek);
});
$('.flatbed-rental-cost').on('keyup input change', function (event) {
// Get flatbed rental cost
var flatbedrentalcost = $(this).val();
flatbedrentalcost = parseInt(flatbedrentalcost) || 0;
jrcFormObj.find('.flatbed-rental').val(flatbedrentalcost);
});
$('.pay-per-week-bobtail-insurance').on('keyup input change', function (event) {
// Get pay per week bobtail insurance
var payperweekbobtailinsurance = $(this).val();
payperweekbobtailinsurance = parseInt(payperweekbobtailinsurance) || 0;
jrcFormObj.find('.bobtail-insurance').val(payperweekbobtailinsurance);
});
$('.jrc-comparison-chart .calcuate-result').on('click', function (event) {
var is_valid = true;
$( "#jrc-comparison-chart-form input[type=text]" ).each(function() {
if ($(this).val()=='') {
is_valid = false;
}
});
if (is_valid===false) {
alert('Please fill in all required form fields');
return false;
} else {
$('#JRCDriverCompensationComparisonChartTwo input[type="text"]').trigger('input');
setEarnings();
$('.jrc-comparison-chart .calcuate-result').val('Recalculate');
}
});
$('#JRCDriverCompensationComparisonChartTwo input[type="text"]').on('keyup input change', function (event) {
// Get grid class name
var gridClassName = $(this).attr('class').split(' ').pop();
// Get gross pay
var grosspay = jrcFormObj.find('.gross-pay.' + gridClassName).val();
grosspay = parseFloat(grosspay) || 0;
// Prevent user to enter zero
if (grosspay==0)
return false;
// Calculate admin costs
if (gridClassName=='grid2' || gridClassName=='grid4') {
var pog_g1 = jrcFormObj.find('.percentage-of-gross.grid1').val();
pog_g1 = parseFloat(pog_g1) || 0;
var pog_competitor = jrcFormObj.find('.percentage-of-gross.' + gridClassName).val();
pog_competitor = parseFloat(pog_competitor) || 0;
if (pog_competitor!=0) {
var gp_competitor = jrcFormObj.find('.gross-pay.' + gridClassName).val();
gp_competitor = parseFloat(gp_competitor) || 0;
var competitoradmincost = ((gp_competitor*(pog_g1-pog_competitor))/100);
jrcFormObj.find('.admin-cost.' + gridClassName).val(competitoradmincost);
jrcFormObj.find('span.adminCost.' + gridClassName).html(competitoradmincost.toFixed(2)).digits();
}
}
var admincost = jrcFormObj.find('.admin-cost.' + gridClassName).val();
admincost = parseFloat(admincost) || 0;
var occ = jrcFormObj.find('.occ.' + gridClassName).val();
occ = parseFloat(occ) || 0;
var flatbedrental = jrcFormObj.find('.flatbed-rental.' + gridClassName).val();
flatbedrental = parseFloat(flatbedrental) || 0;
var bobtailinsurance = jrcFormObj.find('.bobtail-insurance.' + gridClassName).val();
bobtailinsurance = parseFloat(bobtailinsurance) || 0;
var percentageOfGross = jrcFormObj.find('.percentage-of-gross.' + gridClassName).val();
percentageOfGross = parseFloat(percentageOfGross) || 0;
// Calculate Operator Pay
var operatorpay = ((parseFloat(grosspay) * parseFloat(percentageOfGross))/100);
jrcFormObj.find('.operator-pay.' + gridClassName).val(operatorpay);
jrcFormObj.find('span.operatorpay.' + gridClassName).html(operatorpay.toFixed(2)).digits();
// Calculate Total deductions
var totaldeductions = parseFloat(admincost) + parseFloat(flatbedrental) + parseFloat(bobtailinsurance) + parseFloat(occ);
jrcFormObj.find('.total-deductions.' + gridClassName).val(totaldeductions);
jrcFormObj.find('span.totalDeductions.' + gridClassName).html(totaldeductions.toFixed(2)).digits();
// Calculate Weekly Take Home Total
var weeklyTakeHome = parseFloat(operatorpay) - parseFloat(totaldeductions);
jrcFormObj.find('.weekly-take-home.' + gridClassName).val(weeklyTakeHome);
jrcFormObj.find('span.weeklyTakeHome.' + gridClassName).html(weeklyTakeHome.toFixed(2)).digits();
// Calculate Yearly Take Home
var yearlyTakeHome = parseFloat(weeklyTakeHome) * parseFloat(52);
jrcFormObj.find('.yearly-take-home.' + gridClassName).val(yearlyTakeHome);
jrcFormObj.find('span.yearlyTakeHome.' + gridClassName).html(yearlyTakeHome.toFixed(2)).digits();
// Calculate Difference
if (gridClassName=='grid2') {
// Deduction Difference
var dd_g1 = jrcFormObj.find('.total-deductions.grid1').val();
dd_g1 = parseFloat(dd_g1) || 0;
var deductionDifference = totaldeductions - dd_g1;
jrcFormObj.find('span.deductionDifference.' + gridClassName).html(deductionDifference.toFixed(2)).digits();
jrcFormObj.find('.deduction-difference.' + gridClassName).val(deductionDifference);
// Weekly Difference
var wd_g1 = jrcFormObj.find('.weekly-take-home.grid1').val();
wd_g1 = parseFloat(wd_g1) || 0;
var weeklyDifference = wd_g1 - weeklyTakeHome;
jrcFormObj.find('span.weeklyDifference.grid1').html(weeklyDifference.toFixed(2)).digits();
jrcFormObj.find('span.weeklyDifference.' + gridClassName).html(weeklyDifference.toFixed(2)).digits();
jrcFormObj.find('.weekly-difference.' + gridClassName).val(weeklyDifference);
// Yearly Difference
var yd_g1 = jrcFormObj.find('.yearly-take-home.grid1').val();
yd_g1 = parseFloat(yd_g1) || 0;
var yearlyDifference = yd_g1 - yearlyTakeHome;
jrcFormObj.find('span.yearlyDifference.grid1').html(yearlyDifference.toFixed(2)).digits();
jrcFormObj.find('span.yearlyDifference.' + gridClassName).html(yearlyDifference.toFixed(2)).digits();
jrcFormObj.find('.yearly-difference.' + gridClassName).val(yearlyDifference);
}
// Calculate Difference
if (gridClassName=='grid4') {
// Deduction Difference
var dd_g3 = jrcFormObj.find('.total-deductions.grid3').val();
dd_g3 = parseFloat(dd_g3) || 0;
var deductionDifference = totaldeductions - dd_g3;
jrcFormObj.find('span.deductionDifference.' + gridClassName).html(deductionDifference.toFixed(2)).digits();
jrcFormObj.find('.deduction-difference.' + gridClassName).val(deductionDifference);
// Weekly Difference
var wd_g3 = jrcFormObj.find('.weekly-take-home.grid3').val();
wd_g3 = parseFloat(wd_g3) || 0;
var weeklyDifference = wd_g3 - weeklyTakeHome;
jrcFormObj.find('span.weeklyDifference.grid3').html(weeklyDifference.toFixed(2)).digits();
jrcFormObj.find('span.weeklyDifference.' + gridClassName).html(weeklyDifference.toFixed(2)).digits();
jrcFormObj.find('.weekly-difference.' + gridClassName).val(weeklyDifference);
// Yearly Difference
var yd_g3 = jrcFormObj.find('.yearly-take-home.grid3').val();
yd_g3 = parseFloat(yd_g3) || 0;
var yearlyDifference = yd_g3 - yearlyTakeHome;
jrcFormObj.find('span.yearlyDifference.' + gridClassName).html(yearlyDifference.toFixed(2)).digits();
jrcFormObj.find('span.yearlyDifference.grid3').html(yearlyDifference.toFixed(2)).digits();
jrcFormObj.find('.yearly-difference.' + gridClassName).val(yearlyDifference);
}
});
function setEarnings() {
// Current Earnings:
var currentgrosspay = $('.current-gross-pay').val();
$('span#currentGrossPay').html(currentgrosspay);
var currentPayTotalDeductions = $('.total-deductions.grid2').val();
$('span#currentPayTotalDeductions').html(currentPayTotalDeductions);
var currentPayWeeklyTakeHome = $('.weekly-take-home.grid2').val();
$('span#currentPayWeeklyTakeHome').html(currentPayWeeklyTakeHome);
var currentPayYearlyTakeHome = $('.yearly-take-home.grid2').val();
$('span#currentPayYearlyTakeHome').html(currentPayYearlyTakeHome);
var JRCTotalDeductions = $('.total-deductions.grid1').val();
$('span#JRCTotalDeductions').html(JRCTotalDeductions);
var deductionDifferenceGrid2 = $('.deduction-difference.grid2').val();
$('span#deductionDifferenceGrid2').html(deductionDifferenceGrid2);
var JRCPayWeeklyTakeHome = $('.weekly-take-home.grid1').val();
$('span#JRCPayWeeklyTakeHome').html(JRCPayWeeklyTakeHome);
var JRCPayYearlyTakeHome = $('.yearly-take-home.grid1').val();
$('span#JRCPayYearlyTakeHome').html(JRCPayYearlyTakeHome);
var JRCPayYearlyDifference = $('.yearly-difference.grid2').val();
$('span#JRCPayYearlyDifference').html(JRCPayYearlyDifference);
// Potential Earnings:
var desiredgrosspay = $('.desired-gross-pay').val();
$('span#desiredGrossPay').html(desiredgrosspay);
var currentDesiredPayTotalDeductions = $('.total-deductions.grid4').val();
$('span#currentDesiredPayTotalDeductions').html(currentDesiredPayTotalDeductions);
var currentDesiredWeeklyTakeHome = $('.weekly-take-home.grid4').val();
$('span#currentDesiredWeeklyTakeHome').html(currentDesiredWeeklyTakeHome);
var currentDesiredYearlyTakeHome = $('.yearly-take-home.grid4').val();
$('span#currentDesiredYearlyTakeHome').html(currentDesiredYearlyTakeHome);
var JRCDesiredPayTotalDeductions = $('.total-deductions.grid3').val();
$('span#RCDesiredPayTotalDeductions').html(JRCDesiredPayTotalDeductions);
var deductionDifferenceGrid4 = $('.deduction-difference.grid4').val();
$('span#deductionDifferenceGrid4').html(deductionDifferenceGrid4);
var JRCDesiredPayWeeklyTakeHome = $('.weekly-take-home.grid3').val();
$('span#JRCDesiredPayWeeklyTakeHome').html(JRCDesiredPayWeeklyTakeHome);
var JRCDesiredPayYearlyTakeHome = $('.yearly-take-home.grid3').val();
$('span#JRCDesiredPayYearlyTakeHome').html(JRCDesiredPayYearlyTakeHome);
var JRCPayCurrentPayYearlyDifference = $('.yearly-difference.grid4').val();
$('span#JRCPayCurrentPayYearlyDifference').html(JRCPayCurrentPayYearlyDifference);
}
});