Pra começo eu iria citar o exato link que já postaram anteriormente do Design better data tables, tabelas são complicadas de lidar, nesse momento mesmo to trabalhando num sistema 100% de tabelas como Product Designer -sim, sou product designer de berço, infelizmente, mas meu foco é focar apenas em Front-end logo menos-.
Pra começar o cliente parece ser irredundante sobre essa parte das tabelas, então trabalharei com essa premissa. Antes de definir algo, tu já se perguntou ou perguntou a ele qual o objetivo final do sistema no quesito device? Por exemplo, o sistema que citei anteriormente é 100% usado em computadores, ele não tem nem responsivo só pra tu ter uma ideia, isso é, não tem problema todas as colunas serem sempre exibidas. Porém, isso acarreta num probleminha chato que vou abordar logo abaixo.
Excesso de informações é um problema recorrente em quase todos os sistemas populadas unicamente por tabelas. Uma hora ou outra, num futuro próximo ou longínquo, vai rolar de ter uma tabela enorme, com colunas intermináveis, e isso pode acarretar num problema de leitura ferrado -acredite, o cliente vai lembrar o seu nome somente nessa hora-, sendo o chato da festa, vou pontuar pontos negativos em algumas coisas que nosso amigo Rafael (sou novo aqui no Tab, não sei se existe sistema de menção) pontuou.
- Diminuir o tamanho da fonte: Não te recomendo fazer isso, no quesito acessibilidade, tu vai atrapalhar o uso de muitos usuários com vista cansada, miopia e afins, mantenha um tamanho legível e não abra mão disso, essa parte de mínimo facilmente legível é muito relativa ao sistema, já vi apps com a interface toda bugada no celular de usuário pq ele simplesmente usava a fonte em 200%, pode ocorrer.
- Diminuir o espaçamento: Isso causa um problema que gosto de chamar informação claustrofóbica, é péssimo pra leitura, responsividade e flexibilidade de informações.
- Scroll horizontal: Cuidado pra não perder a linha de leitura, imagina comigo, são 20 colunas, eu chego da décima terceira e não lembro mais sobre qual informação estou lendo, vou ter que voltar a primeira novamente, isso é um incômodo grande no sistema. No link que citei anteriormente, tem uma opção bem interessante que é a cereja do bolo -quem come bolo com cereja?- e vou citar abaixo.
No seu caso a melhor opção é usar o Horizontal Scroll, mantendo fixa a informação pai da linha, não dando opção pro usuário se perder na leitura, sempre frisando a informação.