Does your puppy really want a coffee?
Sitting on your knee at a cafe can be a great way to start socialising a puppy before vaccinations are complete. Longer term, it needs a bit more care.
Dogs at cafes rarely look happy and often hide, lunge or bark. I choose to leave Django at home so we can both relax. But if you think it might work for you and your puppy and it is something you plan to do longer term, start socialising to that environment early and have a think about these things:
Should they be there at all?
Is your puppy happy, overwhelmed, nervous, too excited?
Would you enjoy the cafe more without them, and would they be happier to be left at home?
If you use a few treats and pick somewhere quiet, are they able to settle eventually or not?
Can you set up to reduce problems? (Management)
Choose your cafe so you can make things work.
If your puppy is okay coming along, where will you put them?
Can they settle under or beside your table on a mat?
Try to pick an out-of-the-way spot with a bit of space so they don't get overwhelmed or excited by passing dogs.
Can you teach them good behaviour? (Training / Redirection)
Practice with an outdoor table at home first.
Give them a treat on their mat each time the waiter comes over, a dog goes by, or someone stops to say hello.
You could bring a chew to keep them busy, but be careful other dogs can't come up and start a squabble over it.
Repeated tiny treats like in the 'Mat Training' lesson might work better if dogs are passing nearby.
Start with a quick coffee at a quiet time, preferably somewhere you can order without going inside. Gradually build up to longer meals.
If you will have to leave them, practice 'Stay' well first and go in/out of sight somewhere in public for 1-2 seconds - building towards enough time to place your order.
Consider safety before leaving your dog tethered in public: tethered dogs are a high bite risk to passing children, are usually distressed to be left, and are sometimes stolen!
Any other tips and ideas you can add in the comments below?