Built for teams tired of fragmented contact lists

Contact sync that keeps your CRM, your inbox, and your phone in agreement.

Most contact-sync tools are one-way, overwrite-destructive, or require a third-party middleware subscription that silently stops working. Strkr's contact sync is bidirectional with Google Contacts, Microsoft 365, iPhone, and Android, deduplicates on write, resolves conflicts per field, and runs on the Strkr platform without a Zapier bridge.

What this audience is actually dealing with

The pains that bring buyers here.

Teams searching for contact sync are usually trying to solve one of five concrete problems: contacts in the CRM that are not on the phone, contacts in Google that are not in the CRM, contact edits in one system that overwrite the other, duplicate records from a one-way sync, or a sync tool that stopped working silently. The pains below walk through each specific failure mode and what a working sync actually has to do differently.

The one-way sync trap

Google to CRM works, CRM to Google does not.

A one-way sync from Google Contacts to the CRM looks like it covers the case until a user adds a contact in the CRM and discovers it never showed up on their phone. The one-way shape is often marketed as a feature ("safer, no overwrite risk") but produces a worse outcome: users stop trusting the sync and go back to copying contacts manually. Strkr's sync is bidirectional with per-field conflict resolution, so a contact added in either side appears in both within a 60-second median lag.

Overwrite destruction

Last-write-wins killed the AE's edits yesterday.

A naive bidirectional sync uses last-write-wins at the record level, which means the whole record from one side overwrites the record on the other side. An AE who edited a contact title in the CRM finds the title reverted overnight because the Google side had an older value. Strkr's sync is per-field, with timestamps per field, so each field independently applies the most recent write. The AE's title edit stays even if the Google phone number changed yesterday.

Duplicate explosion

The sync created a second record for every contact.

A sync tool that does not dedupe on the first sync creates a duplicate for every contact in the target system. A team with 2,000 contacts suddenly has 4,000. Cleaning up a post-sync duplicate explosion is a weekend project. Strkr's sync runs the dedupe pass on initial sync (fuzzy match on email, phone, name) and surfaces merge candidates in the admin queue. The initial sync does not produce new duplicates in the target system.

Silent sync failure

The sync tool stopped working three weeks ago and nobody noticed.

Third-party sync tools (Google Workspace sync, PieSync, now Operations Hub) are known to silently stop firing when an OAuth token expires, a rate limit trips, or a vendor API changes. We talked to a 24-person brokerage in July that discovered their PieSync had been dead for 19 days during a renewal cycle. Strkr's sync monitors itself with per-connection health checks and emails the admin within 15 minutes of a sync failure. Silent failure is a design-level rejection.

Mobile contact divergence

The iPhone shows a stale phone number from last year.

Field reps whose phone contacts drift from the CRM start calling stale numbers. The CRM updated the phone number last Tuesday; the iPhone still has the old one from a year ago because the sync is one-way CRM-to-cloud and the iPhone was last synced before the update. Strkr's sync to iCloud and to Android contacts runs bidirectionally with push updates, so an edit in the CRM lands on the phone within minutes rather than at the next manual sync.

The GDPR and consent gap

Contact sync does not know about marketing consent.

Most contact-sync tools treat all contact fields the same. GDPR and CCPA require that marketing-consent flags move with the contact record so a contact who unsubscribed in the CRM is also unsubscribed in Google Groups and in the mobile contact list. Strkr's sync carries the consent-flag fields with the contact and respects the consent state in downstream sync targets. The compliance posture is end-to-end rather than contact-only.

How Strkr's contact sync actually works

The nine design decisions that make the sync reliable.

A contact sync is deceptively simple from the outside and surprisingly complex once the edge cases arrive. The nine decisions below are the design choices Strkr made that distinguish a working bidirectional sync from a demo-day sync. Each decision is a trade-off that favors reliability over simplicity.

Bidirectional per field

Each field has its own last-write timestamp.

The sync tracks a timestamp per field rather than per record. When a conflict arises, each field independently applies the most recent write. An AE's title edit from Tuesday survives a Google-side phone number update from Wednesday. The per-field model is what prevents the "my edits got stomped" complaint that kills record-level sync tools.

Dedupe on initial sync

Fuzzy match catches the duplicates before they multiply.

On the first sync of a new connection, the dedupe engine runs fuzzy match on email, phone, and name-plus-domain. Candidates with high confidence auto-merge. Ambiguous candidates land in the admin merge queue. The admin reviews the queue in a 15-minute pass and the initial sync completes clean. No post-sync duplicate explosion.

Health checks per connection

Silent failure is not a possible outcome.

Each sync connection reports health every 5 minutes. OAuth token expiry, rate-limit tripping, API changes, authentication failures all surface within 15 minutes to the admin via email and in the Strkr admin dashboard. The admin sees a yellow or red indicator next to each connection. The "sync has been dead for 19 days" shape is architecturally impossible.

Direction-of-truth per field

The admin can set the authoritative side per field.

For fields where one source should always win (CRM title overrides the Google title because the CRM is the HR source of truth), the admin sets a direction-of-truth per field. The sync enforces the direction and the "other side" field becomes read-only in the alternative tool. The direction-of-truth model lets teams integrate the sync into their existing data-governance policies.

Consent flag preservation

Marketing consent travels with the contact.

The marketing-consent flags (do-not-email, do-not-call, SMS opt-in, GDPR consent timestamp) travel with the contact across sync targets. A contact who unsubscribes in the CRM also unsubscribes in Google Groups, Mailchimp (if connected), and the mobile contact list. The compliance posture is end-to-end rather than per-system.

Delete propagation policy

Admin controls whether deletes propagate across systems.

A delete in the CRM can propagate to Google, iPhone, and Android, or it can be contained in the CRM only (with the contact marked archived rather than deleted elsewhere). The admin sets the policy per connection. The default is "contained delete" because accidental cascading deletes are a known failure mode of naive sync tools.

Field-level mapping

Map Strkr fields to Google and Microsoft 365 fields.

The admin maps Strkr fields to the corresponding Google Contacts and Microsoft 365 fields. Custom Strkr fields can map to the "notes" field or to Google custom contact fields. The mapping is reviewable and editable. Unmapped fields stay in Strkr and do not propagate; mapping gaps are visible rather than silent.

Rate-limit-aware queueing

The sync respects the target API quotas.

Google and Microsoft 365 both have API rate limits per tenant. Strkr's sync queues updates and respects the per-minute and per-day quotas with backoff. A bulk edit of 2,000 contacts in Strkr queues through the Google API without tripping the quota. The sync might take 20 minutes rather than 20 seconds for a bulk edit, but it will not fail silently from a 429.

Audit log of every sync action

Every sync write is logged with the source, timestamp, and payload.

Every write the sync performs on either side is logged with the source system, the timestamp, the field changed, the before value, and the after value. The admin can query the audit log for debugging ("why did this field change yesterday") or for compliance ("prove to the regulator that we did not sync this field after the opt-out").

The sync targets

Six systems Strkr syncs contacts with out of the box.

Strkr's contact sync covers the common targets without a middleware tool. The six cards below describe the native sync integrations and what each one covers. Additional targets are available via the open API with the same sync primitives.

Google Contacts

Per-user and shared-contacts sync.

Each user authorizes their own Google account and the sync covers their personal contacts bidirectionally. For shared Google Contacts (within Google Workspace), the admin authorizes a shared account and the sync treats the shared list as a team-visible source. Contact groups in Google map to Strkr tags. The sync covers names, emails, phones, companies, titles, addresses, notes, and custom fields.

Microsoft 365 Contacts

Exchange personal and GAL sync.

Microsoft 365 contacts sync through the Exchange personal contacts and optionally through the Global Address List (GAL) with admin authorization. The per-user personal contacts behave like Google personal: each user authorizes their own account. The GAL sync is a one-way import for internal directory enrichment. The sync covers the standard contact fields plus Exchange custom properties.

iPhone and iPad

CardDAV sync with iCloud for cross-device parity.

iOS contact sync runs through CardDAV against the Strkr-provided CardDAV endpoint. Users add Strkr as a contact account in iOS Settings and the contacts sync to the Contacts app across iPhone, iPad, and Mac via iCloud. The sync is bidirectional: contacts added on the iPhone land in Strkr within minutes and the dedupe pass runs on write.

Android

Google Contacts sync or direct Android account.

Android contact sync runs either through the Google Contacts integration (which the Android phone already syncs natively) or through a direct Strkr Android account that uses the Android contact-provider API. The direct account option is useful for teams that want a separate contact source on the device without mixing with the user's personal Google contacts.

Salesforce

Bidirectional sync for teams running Strkr alongside Salesforce.

For teams running Strkr alongside Salesforce (common during a migration or in a hybrid stack), the Salesforce contact sync is bidirectional with per-field direction-of-truth settings. The sync uses a Salesforce Connected App with Enhanced Domain and respects the Salesforce sharing model. Fields map 1-to-1 and custom-field mapping is admin-configurable.

Open API custom sync

Build a sync to anywhere the common connectors do not cover.

For sync targets outside the native set (Zoho, Freshsales, custom-built CRMs, internal directories), the Strkr open API exposes the same sync primitives: list changes since timestamp, update field with timestamp, resolve conflicts per field. A team building a custom sync against the API gets the same reliability guarantees as the native sync.

The sync flow in production

What a team actually experiences day to day.

The day-to-day experience of a working contact sync is boring, which is the goal. The seven cards below describe the moments in a typical month where the sync matters. The design is for the sync to be invisible 95 percent of the time and useful during the 5 percent of moments when a conflict surfaces.

Initial setup

The admin connects Google Workspace in 10 minutes.

The admin opens the integration page, picks Google Contacts, and authorizes a workspace-level Google account. The initial sync pulls the Google Contacts list and runs the dedupe pass. The admin reviews the merge queue (10 to 20 minutes for a typical 2,000-contact import). The connection is live and syncing within half an hour.

Each user connects

Per-user OAuth takes 60 seconds.

Each team member authorizes their own Google or Microsoft 365 account from the user settings page. The 60-second OAuth flow covers their personal contacts and their email sync (if enabled). The user starts getting contacts in the mobile phone app within minutes and sees new contacts flowing both ways within the hour.

A new contact lands

An AE adds a contact and it appears on the phone.

An AE adds a contact in the Strkr web app. Within 60 seconds the contact appears in the AE's Google Contacts, which triggers the iPhone and Android sync to show the contact on the phone. The AE calling the contact from the phone the next morning has the right number without a manual sync step.

An edit from the phone

A field update on the phone propagates to Strkr.

A rep in the car updates a contact's phone number from the iPhone Contacts app after a call. The iCloud sync updates Google Contacts (if linked), which triggers the Strkr sync. The updated number appears in the Strkr contact record within 2 to 5 minutes. The AE calling later uses the updated number from Strkr.

A conflict surfaces

Two edits to the same field within 60 seconds.

When two edits to the same field happen within 60 seconds (one in Strkr, one in Google), the per-field timestamp picks the later edit. The earlier edit is logged in the audit trail so the user can see what their edit was before it got replaced. True conflicts are rare in production (under 0.1 percent of edits) because the window is short.

The sync pauses

An OAuth token expires and the admin gets an email.

When a Google or Microsoft 365 OAuth token expires, the sync pauses on that connection. The admin receives an email within 15 minutes with a one-click re-authorization link. The reauth takes 60 seconds and the sync resumes. The queued updates during the pause window apply in order. No silent failure.

The audit question

The admin answers a "why did this change" question.

A rep asks why a contact's title reverted overnight. The admin queries the audit log for that contact, sees the sync action, the source system, and the timestamp. The admin either confirms the change was correct or adjusts the direction-of-truth setting on the title field so it does not happen again. The audit log is the operational diagnostic surface.

Where contact sync really matters

Five team shapes where the sync is a core daily tool.

Not every team needs contact sync as a central capability. The five below are the shapes where the sync is a daily utility rather than a nice-to-have. Each one has a motion that the sync enables or breaks.

Field sales teams

Reps who call contacts from the phone.

Outside sales reps and field reps who dial contacts from the phone need the phone contact list to match the CRM. A rep calling a stale number is a lost minute and a damaged relationship. The bidirectional iPhone and Android sync ensures the phone contact list reflects CRM edits in minutes rather than at the next manual sync.

Account executives with executive admins

A delegated admin who manages contacts for an AE.

Senior AEs often have executive assistants who manage contacts on their behalf. The EA edits the Google Contacts list and expects the CRM to reflect the edits. The bidirectional Google Contacts sync covers this handoff without the EA needing a CRM license.

Agencies with client contact lists

Agencies managing client-side contact lists.

Design agencies, PR firms, and consulting shops manage client-side contact lists on behalf of clients. The sync capability keeps the client's own Google Workspace in agreement with the agency's project management tool. The direction-of-truth settings let the agency control which side is authoritative per field.

Recruiting firms

Recruiters whose contact list spans phone, email, and CRM.

Recruiters build large candidate contact lists that span the phone (for cold calling), email (for outreach), and CRM (for engagement tracking). The sync keeps all three in agreement. The dedupe on write prevents the "I have this candidate three times" problem that plagues recruiting tools.

Hybrid Strkr-plus-legacy-CRM teams

Teams running Strkr during a migration from another CRM.

Teams migrating from Salesforce or HubSpot often run Strkr alongside the legacy CRM for a few months. The bidirectional sync keeps the two in agreement during the transition. The migration completes when the team is confident that Strkr covers the full motion; the sync comes off once the legacy CRM archives.

Head-to-head

Strkr contact sync vs the typical sync middleware.

Buyers evaluating contact sync usually compare against HubSpot Operations Hub (formerly PieSync), Zapier, Salesforce Data Loader, and ad-hoc Google Apps Script setups. The comparison below focuses on reliability and governance, not just feature count.

Feature Strkr HubSpot Operations Hub / Zapier / middleware
Bidirectional sync Native, per-field timestamps Varies, often record-level with overwrite risk
Dedupe on initial sync Fuzzy match plus admin merge queue Often absent, duplicate explosion
Silent-failure guard Per-connection health check every 5 minutes Silent until someone notices
Direction-of-truth per field Admin configurable Record-level only
Audit log Every sync action logged Varies, often summarized
Rate-limit awareness Queued with backoff Often fails under load
Consent flag preservation Travels with the contact across targets Rarely considered
Mobile phone sync Native iPhone and Android bidirectional One-way or via Google Contacts bridge
Pricing Included on Strkr paid tiers 45 to 900 dollars a month depending on volume
Compliance HIPAA with BAA, SOC 2 Type II in progress 2026-Q4 Varies
How teams use Strkr

Teams whose contact sync runs on Strkr.

The five stories below are from Strkr tenants whose daily motion depends on contact sync working. Each one described a previous-sync failure that led them to Strkr.

Field sales team, 32 reps

From a one-way sync to Strkr after a stale-number incident.

A 32-rep field sales team at a commercial services firm had been running a one-way CRM-to-Google sync for 18 months. A rep called a stale number from the phone and reached the wrong person, which escalated into a brief contractual issue with a customer. The team moved to Strkr specifically for the bidirectional phone sync. The admin ran the initial sync, reviewed the merge queue, and the team was on the new sync in a week.

Executive-support team at a hedge fund

Delegated admin edits that reflect in the CRM.

A hedge fund's executive-support team manages contacts on behalf of 8 senior investors. The investors want their phone contacts curated by the EAs without having to log into a CRM themselves. The bidirectional Google Contacts sync lets each EA manage the investor's Google Contacts and have the edits reflect in the shared Strkr workspace. The investors see the updated contacts on their phones without any workflow change.

Design agency, 14 people

Client-side Google Workspace sync without a client CRM license.

A 14-person design agency manages client contact lists on behalf of 6 retainer clients. Each client has their own Google Workspace. The agency connects each client's Google Workspace with scoped access and syncs the client's contacts into a client-specific workspace in Strkr. The client sees the updates in Google without needing a Strkr license. The direction-of-truth settings keep the client as the authoritative source for the contact-list portion.

Recruiting firm, 11 recruiters

Candidate contacts across phone, email, and CRM in agreement.

An 11-recruiter firm had been building candidate contact lists across phone (for cold-call lists), email (for outreach), and a legacy ATS. The three systems drifted and the recruiters wasted roughly 10 minutes a day reconciling. The move to Strkr with the native sync put all three in agreement. The firm's operations lead measured a 7-minute-per-recruiter-per-day reduction in reconciliation overhead, which recovered roughly 15 hours a week across the team.

Migration from Salesforce

Six months of parallel sync during a 24-person team migration.

A 24-person services team was migrating from Salesforce to Strkr. The migration ran over 6 months with the bidirectional Salesforce sync keeping both systems in agreement. The team used Strkr for the primary motion from month 2 while the Salesforce reports continued running until the finance team was ready to cut over. The sync was the bridge; the migration closed cleanly in month 7 with the Salesforce archive.

Contact sync that stays in agreement without a middleware tax.

Strkr's contact sync is bidirectional with Google, Microsoft 365, iPhone, Android, and Salesforce. Per-field conflict resolution, dedupe on write, health checks every 5 minutes, and no silent failure.

Common questions

What buyers in this bucket ask most.

How does the sync handle duplicates on the initial import?

On the first sync of a new connection, the dedupe engine runs fuzzy match on email, phone, and name-plus-domain against the existing records in both source and target. High-confidence matches (identical email or identical phone) auto-merge. Lower-confidence matches (fuzzy name match with partial field overlap) land in the admin merge queue for review. The admin reviews the queue in a 15-minute pass for a typical 2,000-contact import. The initial sync does not create new duplicates in the target system. The precision on the auto-merge pass is roughly 98 percent and the merge queue precision is roughly 94 percent.

What happens if the OAuth token expires?

When a Google or Microsoft 365 OAuth token expires (typically after 60 to 90 days without re-authentication, or on a password change), the sync pauses on that connection. The admin receives an email within 15 minutes of the pause with a one-click re-authorization link. The reauth takes 60 seconds and the sync resumes. Any updates on either side during the pause window queue and apply in order when the sync resumes. The pause-and-reauth cycle is logged in the audit trail so the admin can see every pause event and confirm the resume applied correctly.

How does the per-field conflict resolution actually work?

Each field on a contact record has its own last-write timestamp independent of the other fields. When a conflict arises (both sides edited the same field within the sync lag window), the field with the later timestamp wins. The earlier value is logged in the audit trail with the field name, the source system, and the exact timestamp. For fields where one side should always win regardless of recency (CRM title overrides Google title, for example), the admin sets a direction-of-truth override that disables the timestamp logic for that specific field. True conflicts in production are rare (under 0.1 percent of edits) because the sync lag is short.

Can we sync Strkr with a CRM other than the native connectors?

Yes. For CRMs outside the native connector set (Zoho, Freshsales, Sugar, custom-built CRMs), the Strkr open API exposes the same sync primitives: list changes since timestamp, update field with timestamp, resolve conflicts per field. A team can build a custom sync against the API with the same reliability guarantees. We publish an open-source Node.js reference implementation that covers the common patterns (initial dedupe, bidirectional sync loop, OAuth refresh, audit logging). The reference implementation is roughly 400 lines of code and runs on a 1-core serverless function.

Is the contact sync compliant with GDPR and HIPAA?

Yes. The sync carries marketing-consent flags with the contact across sync targets so a GDPR unsubscribe in Strkr also unsubscribes in Google Groups and other connected systems. The CCPA do-not-sell flag propagates the same way. For HIPAA (healthcare teams), the sync runs under the signed BAA with encryption at rest, encryption in transit, and full audit logging. The sync respects the HIPAA-scoped field access, so a sync target without a BAA will not receive PHI-tagged fields. SOC 2 Type II is in progress through 2026-Q4 with the Type I report available in the interim.

Does the sync count against pricing or seat count?

No. The native sync connectors (Google Contacts, Microsoft 365, iPhone CardDAV, Android, Salesforce) are included on every Strkr paid tier at no additional charge. There is no per-contact sync meter, no sync-connector pack upcharge, and no "sync tier." The custom-API sync usage counts against the standard API rate limits on paid tiers, which are generous for the typical sync workload (10,000 writes per minute on Starter and higher on Pro). Teams with very high sync volume (over 100,000 writes per minute sustained) typically land on the Enterprise tier for the dedicated capacity.

Try it free. Bring your team next week.

No sales call, no migration consultant, no four-month implementation. Enter your card, get 14 days of the full Pro tier, cancel any time before day 14 with zero charge. Spin up a workspace, import your CSV, and have something useful before lunch.