The retailer took full-page adverts in more than 100 US newspapers, stating: “Wal-Mart is working for everyone. Some of our critics are working for themselves.”
The campaign was partly launched in an effort to counter the accusation that it pays low wages, which in turn puts negative pressure on the salaries paid by other employers.
Wal-Mart states its average pay is twice the minimum wage.
In recent months it has had to deal with protests against store openings and a sex discrimination suit involving up to 1.6m female employees.