I can't see yet -

Something I can’t see. I’m doing wrong.

export function dayRate(ratePerHour) {
return ratePerHour * 8;

export function priceWithMonthlyDiscount(ratePerHour, numDays, discount) {

const fullMonthBill = dayRate(ratePerHour) * 22;

const monthsWithDiscount = Math.floor(numDays / 22) * fullMonthBill * discount;

const remainingDays = numDays % 22;

const remainingCost = remainingDays * dayRate(ratePerHour);

const totalPrice = monthsWithDiscount + remainingCost;

return Math.ceil(totalPrice);


Any thoughts?

The difficulty is how you’re applying the discount.

the monthsWithDiscount should not be the months bill times the discount, it should be times 100% minus the discount

To reduce the bill by 10%, you want to multiply by 90%

From a code review perspective, store the “magic numbers” as constants with sensible names.

return ratePerHour * HOURS_PER_DAY;
fullMonthBill = dayRate(ratePerHour) * WORKING_DAYS_PER_MONTH;

@m4n50 , May I suggest that you update the title of the post to include the name of the exercise (freelancer-rates), if it is possible - this would help others who get stuck on the similar problem might be able to see the guidance offered by @glennj and benefit from that?