My instinct from previous games in the series tells me to try a throw, but since just guards are usually done in the midst of your opponent button mashing, the throw is often cancelled. I realize this is very character specific, but I was curious if anyone had any good general advice.
Although the only definitive answer would be to simply memorize the optimal punishment options after just guarding every move, that's obviously not feasible. However, there are rules of thumb that can be used to make educated guesses.
First, I'll clear up some common misconceptions regarding Just Guard.
How JG Works
JG is performed by pressing and releasing G in a span of time no longer than 4 frames (approx. 67 milliseconds).
JG's 'window of opportunity' is the 6 frames immediately following the release of the guard button. In game terms, this is a surprisingly large window, which has lead to the popularity of "option select just guarding (OSJG)", in which players guess when a fast attack is coming in an ambiguous situation, attempt a JG, then guard normally to protect against slower attacks.
There is a limit on how often JG can be performed. After a failed JG attempt (i.e. G was pressed and released within 4 frames and no attack landed in the following JG window), there is a 29-frame "cooldown" period during which JG cannot be performed. There is no cooldown on successful JGs.
When multiple attacks occur in quick succession and the first attack is JGed, the following attacks will also be JGed. Although the exact window for this is unknown, my estimate places it around 6 frames--the typical JG window.
If two attacks land simultaneously during the JG window, one will "pierce through" and not be JGed. That is, only one attack can be JGed at any single frame, whereas with regular guard multiple attacks can be blocked simultaneously. This isn't too big of a deal because very few situations exist where multiple attacks can land simultaneously. Examples include Algol's 4A+B at point blank range and Raphael's 6BB BE string.
There are several "advanced" applications of JG, including GI JG, JG GI, and Ukemi JG. These can be beneficial but are not necessary for strong play so I won't delve into them.
JG functions through three simple operations:
What this means for punishment
Quite a few "pokes" that are likely to be OSJGed are safe or borderline safe. For example, generic 2As are -11 on JG and the opponent's character recovers in a crouching state, so these are almost entirely unpunishable. However, there are techniques for dealing with many standard options on JG.
Dealing with Generic AAs
Generic AAs consist of two high attacks in quick succession. Most AAs "jail" the opponent when blocked, that is, if the first hit is blocked the second hit cannot be ducked. Ivy's AA and the slower, nonstandard AAs such as Nightmare's, Xiba's, Siegfried's, etc. are exceptions. However, when the first hit of a generic AA is JGed, the second hit can be ducked, allowing for much greater punishes. Doing so requires very fast reactions and plenty of muscle memory gained from experience, but it rockets the punishability of most AAs from around -13 (an AA/K/2A punish) to while rising launcher punishes such as Leixia FC 3B, Aeon/Cervantes/Siegfried/Nightmare etc. WR Bs.
Dealing with Generic BBs
BBs are among the most common pokes likely to be JGed in neutral situations. They're harder to deal with using JG than AAs, but some characters can manage through the use of auto-Guard Impacts (aGIs). Some of these characters are Cervantes (B+K), Alpha Patroklos and Pyrrha (A+B), Xiba (CE), et al.
With both AAs and BBs, it is also possible and arguably easier to simply tap G a second time to JG the second hit, then use an appropriate punisher (usually in the i12-14 range).
Note regarding the above two examples: If you suspect an AA or BB is on its way, it's almost always a better option to simply duck or sidestep respectively. The above examples mostly apply for when you're guessing with JG and react to JGing the first hit.
Dealing with Generic 2As on JG
Always attempt to backdash, jump attack, or aGI these. Alpha Patroklos is the only character who gets any real damage as a punish for 2A on JG. If you do JG a 2A, you have 11 frames of advantage to force a mixup (e.g. throw the opponent with little risk of interruption) or improve your positioning in the arena.
With other moves, you often simply have to make an educated guess as to its punishability, unless you're already intimately acquainted with that character's JG frames. If you play a character with a strong, fast, general punishment option such as Natsu's A:6, Pyrrha/Pyrrha Omega's 236B, Cervantes' aB, or Alpha Patroklos' 2143a:B, you will be quite successful if you simply choose to use this move after any JG you perform. If your character lacks a strong, fast punishment option, you might choose to use the frame advantage for a different purpose, such as damaging the opponent's guard with a slower, advantageous move (e.g. Pyrrha Omega's 4B or Nightmare's 66B), throwing the opponent (this is excellent for Astaroth), or some other action done with the intent of shifting the momentum in your favor.
I'd love to go further in depth on a single character if you specify which.
There's no exact rules to follow for punishing post-JG, but educated guesses can be made based on the type of move that was JGed. In general, "larger", slower moves are far more punishable than quick pokes.
Standard AAs, 2As, Ks, and fast CEs are all good bets against JGed pokes. Launchers like standard 3Bs are good for punishing bigger recovery moves.
Throws aren't necessarily a bad option, but guaranteed damage is always preferable.
And of course, if you have any doubt regarding something frame-related, the 8WayRun wiki can be a valuable resource. It's community-maintained and some characters still lack JG information, but there's a hefty amount of information contained therein.