
James McAvoy já se envolveu em várias ações de caridade.

Uma vez, McAvoy fez um “aterrorizante” BASE jumping do prédio do hospital mais alto do mundo em uma tentativa de ajudar a arrecadar dinheiro para a caridade de crianças Ugandan Retrak, uma organização que ajuda crianças de rua.
McAvoy é um apoiador da Cruz Vermelha britânica com quem viajou a Uganda para aumentar a consciência dos projetos lá. Ele se envolveu com a caridade após ter filmado O Último Rei da Escócia por vários meses e ficou chocado com o que viu. Em fevereiro de 2007, ele visitou o norte do Uganda e passou quatro dias vendo projetos apoiados pela Cruz Vermelha Britânica.
James também participa do Soccer Aid, um evento de caridade britânico bienal que arrecadou mais de £20 milhões em ajuda a UNICEF no Reino Unido, através de vendas de bilhetes e doações do público. O evento é um jogo de futebol entre duas equipes de celebridades e ex-jogadores profissionais, representando a Inglaterra e o Resto do Mundo (RoW). O Soccer Aid foi iniciado por Robbie Williams e Jonathan Wilkes.

Em 2019 James compareceu a cerimônia do Oscar e pediu para que várias celebridades autografassem sua camisa. James usou a camisa para promover uma ação de doações para o instituto Ronald McDonald House de NYC e todos que doassem concorriam a camisa.
James também é um grande apoiador do Red Nose Day (Dia do Nariz Vermelho). Uma campanha com a missão de erradicar a pobreza infantil, financiando programas que mantêm as crianças seguras, saudáveis e educadas.
James McAvoy doou £ 275.000 e usou seu instagram para pedir doações para a campanha Masks 4 NHS Heroes, que arrecada fundos para fornecer Equipamentos de Proteção Individual (EPI) para proteger os profissionais de saúde contra o Corona vírus enquanto cuidam de pacientes doentes.
James McAvoy apoiou uma arrecadação de fundos da campanha Mask for Scotland, pela mãe da atriz Joanna Vanderham para ajudar a equipar os médicos da linha de frente contra o Corona vírus. Além do apoio, James doou £ 50.000 para a causa.
Em 2021, James participou de um episódio do programa The Great British Bake Off que ajuda o Stand Up To Cancer, a campanha conjunta de arrecadação de fundos do Cancer Research UK e do Channel 4.