This article goes over issues where a controller is mapped wrong, or is generally acting weird.
Remapping the controller via Parsec
If your controller seems to be mapped wrong, the main thing you should do is go to Settings > Gamepad to confirm where your buttons are, and remap it if necessary.
If things are mapped properly on the guest, the rest is up to the game on the host. You should ensure the game on the host isn't mapped incorrectly either, in that case.
Controller has some stuck inputs while playing
Xbox One S bluetooth controllers are known to get triggers and other buttons stuck sometimes, specifically when they vibrate. To fix this, update the controller's firmware to something above version 4 using the Xbox Accessories app.
Nintendo Switch Pro Controller analogs are messed up
Starting the controller while Parsec is running may cause the controller analogs to act weirdly. Restarting Parsec should fix this. If you still observe issues with the controller, check if closing Steam and restarting Parsec again fixes the issue. Alternatively on Windows, using DS4Windows or BetterJoy to create an xbox controller, and hiding the original one using HidHide works around the issue altogether.
General tips for Windows users
Most popular controllers work just fine, such as genuine Dualshock 4, Dualsense, Switch Pro, Joycon, and Xbox controllers. Gamecube controllers will work with a Mayflash adapter set to PC mode.
If the controller is showing but can't be remapped properly, or it is generally behaving weirdly, consider searching for a program to convert it to Xinput, the xbox controller API.
360Controller driver issues on macOS
If you're using an xbox controller with the 360Controller driver (for macOS Catalina or older), go to its preferences in System Preferences and turn on "Pretend to be an Xbox 360 Controller" in the advanced tab.
Issues with Dualshock 3 on Linux and Dualsense on Android
We're currently aware of an issue with the d-pad on Dualshock 3 controllers on Linux, and general broken mapping with Dualsense controllers on Android. There's no workaround for those issues at this time.