Answering Brittany1416:
It happens with any and every task in the Contacts app. Fixing one character in the Notes section. Going into edit mode and adding a name, email, anything. Even if I'm ony removing a space or fixing a 1-character typo. I literally click to place the cursor or type one character and have to watch the beachball for 30 seconds or more, then try again and get the beachball again, and so on. It can take 4 minutes to add a first and last name and email address. It appears to be communication between MacOS Contacts.app and iCloud, both up to iCloud and down from it after an edit or addition made on the phone. It doesn't matter what or where my wifi connection is.
There has never been an error. (I'd have reported it here to help others and to receive informed help.)
My Mac is not and never has run slowly. ONLY Contacts edited on the Mac. That article doesn't have anything relevant. I have lots of space and RAM. I far under-utilize this Mac.
When I make a change or add to Contacts on the iPhone, it appears that quitting MacOS Contacts is the best way for it to appear. But not always. Not tonight as I run tests.
Oh, also... I only use Contacts for my iCloud account. I don't have google or any other set of contacts. (Or Notepad or any other app.)
-------
A few tests of iCloud syncing:
I just added a company name to a test note on iPhone. and ended the edit. 2 minutes and it's not on the open contact on the Mac. Quit Contacts on Mac. Relaunched. 3 minutes. Still not there. Quit and relaunched both iPhone and Mac apps. 4 minutes until there.
Into Edit mode on iPhone, added phone # while the contact was open on Mac. 1:05 and it's there. But I can't do anything in Contacts on Mac because beach ball still spins when I go back to Contacts. 55 seconds and a click registers. 1:22 before I can type or look something up. Granted, people don't typically work in both apps at once.
Contacts and other apps quit on iPhone. Contacts relaunched on Mac. Returned to Fake Test contact on Mac; no slowdown so I added 5 words. Launched on iPhone. Change not there. Quit each/both apps, still not there. Quit phone app 3 times, still not there. It's 3 minutes. Quit on Mac and leaving it quit. Over 6 minutes and the 5 words on the notes area are still not there - a combo of running in the foreground and background. It is on iCloud though. 10 minutes. So not coming down to iPhone. And this contact is not on the iPad at all. At 11 minutes the entry came to iPad and the note change came to iPhone. Maybe 11 minutes to sync is normal. It's really the entry on Mac that is the issue here.
3 new words in note area entered on iPad didn't come to iPhone and Mac in 3 minutes. I added 1 character to the name on the iPad. It's not going up to iCloud, 2 minutes or more so far. Logging out and in on iCloud.com didn't put it there for over 5 minutes but not down to phone or Mac. Well over 12 minutes and not on them. I even switched to hotspot to see if it's about my wifi internet. It came through to iPhone in 20 minutes but still not to the Mac.
-------
The scary thing about my tests is that I don't want to add or edit on one device and have it lost forever. What assurance do I have that the old on 2 devices won't override the iCloud "truth."
But again, that's not the same exact issue as the beach ball when I'm only trying to add or add to a record in Contacts.
It should not take over minutes of patient waiting to create or edit a Contact record.
ONE THING: DIsmissing (on iPhone) what Apple calls Duplicate records, and hand-editing to reduce about 20 of their so-called 111 or 225 dupes has sped up the Mac use. I didn't have a single true dupe. I have 5 people at the same company and many who switch companies so their name is on several records. And several times the same name is only a coincidence.