CRM migration

Migrate from AddressTwo to Microsoft Dynamics 365 Sales

Field-level mapping, validation, and rollback between AddressTwo and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .

AddressTwo logo

AddressTwo

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

50%

5 of 10

objects map 1:1 between AddressTwo and Microsoft Dynamics 365 Sales .

Complexity

BStandard

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from AddressTwo to Microsoft Microsoft Dynamics 365 Sales is a step up from a flat-rate small-business tool into an enterprise-grade CRM with the full Microsoft 365 ecosystem behind it. AddressTwo stores company data as fields on the Contact record; Dynamics 365 requires a separate Account record with Contact as a child lookup. We split AddressTwo contact records into Account and Contact pairs during migration, resolve owner assignments against the destination User table, and preserve activity timestamps against the correct parent records. AddressTwo's flat-rate $14.95/month model expands into Dynamics 365 per-user licensing ($65-$165/user/month depending on tier), which is the most significant cost delta to model before committing to migration. We do not migrate AddressTwo workflows, automations, or mass-email campaign logic as code; we deliver a written inventory of these for your admin to rebuild in Dynamics 365.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

AddressTwo logo

AddressTwo

What's pushing teams away

  • No QuickBooks or accounting integration — at least one long-term user cited this as the reason they finally evaluated alternatives despite years of satisfaction.
  • Basic reporting and dashboard features — multiple reviewers describe difficulty building reports in the web interface, especially after UI refreshes.
  • Duplicate contact detection fails during email sync, causing double records that require manual cleanup — this friction pushed at least one reviewer toward a switch.
  • Scaling concern: the feature set is deliberately simple, so growing teams outpace the platform's capabilities and need more advanced pipeline automation or custom objects.
  • Some users find the web interface harder to navigate after UI updates, preferring the older program layout.

Choosing

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

What's pulling them in

  • Deep Microsoft 365, Teams, and Outlook integration makes Microsoft Dynamics 365 Sales a natural fit for Microsoft-first organizations already invested in that ecosystem
  • Sales Enterprise and Premium tiers offer unlimited custom tables and advanced AI-driven forecasting and predictive analytics not available in lower tiers
  • Professional tier pricing at $65 per user per month offers a lower entry cost than Salesforce for SMB teams with straightforward CRM needs
  • Flexible customization options allow businesses to build bespoke apps, tailor forms and views, and integrate with other Dynamics 365 modules
  • Microsoft Copilot AI tools are embedded directly into the sales workflow on Enterprise and Premium, automating routine tasks and providing deal intelligence

Object mapping

How AddressTwo objects map to Microsoft Dynamics 365 Sales

Each row shows how a AddressTwo object lands in Microsoft Dynamics 365 Sales , including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

AddressTwo

Contact

maps to

Microsoft Dynamics 365 Sales

Account + Contact

1:many
Fully supported

AddressTwo stores company information as fields on the Contact record (company name, address, phone). We extract those fields to create a Dynamics 365 Account record first, then attach the Contact as a child record with AccountId pointing to the newly created Account. The original AddressTwo company name becomes Account.Name; the Contact's full name splits into Contact.FirstName and Contact.LastName. Any contact without a company value in AddressTwo creates a standalone Contact with AccountId left null for admin review.

AddressTwo

Deal

maps to

Microsoft Dynamics 365 Sales

Opportunity

1:1
Fully supported

AddressTwo Deals map directly to Dynamics 365 Opportunities. The deal name becomes Opportunity.Name, deal value maps to Amount, close date maps to CloseDate, and pipeline stage maps to StageName. We create a Microsoft Dynamics 365 Sales Process per AddressTwo pipeline before migration so that the stage probability values align. Closed-Lost and Closed-Won states from AddressTwo carry forward as Opportunity.StateCode values.

AddressTwo

Activity (Call, Meeting, Task)

maps to

Microsoft Dynamics 365 Sales

Task + Event

1:1
Fully supported

AddressTwo Activities are date-stamped events tied to a Contact. Calls and tasks migrate as Dynamics 365 Task records; meetings migrate as Event records. The original timestamp becomes ActivityDate on Task or StartDateTime on Event, preserving the chronological timeline. Owner assignment resolves via the AddressTwo owner-to-Dynamics User lookup by email.

AddressTwo

Note

maps to

Microsoft Dynamics 365 Sales

Annotation

1:1
Fully supported

AddressTwo free-text notes attached to Contacts migrate to Dynamics 365 Annotations (Notes) linked via the Regarding field to the corresponding Contact or Opportunity. Notes are stored as plain text body in Annotation.Body with IsPrivate set to false. Rich-text formatting does not carry forward from AddressTwo's note storage format.

AddressTwo

Email History (BCC thread)

maps to

Microsoft Dynamics 365 Sales

Email (Activity)

1:1
Fully supported

AddressTwo BCC-collected email threads stored per Contact migrate as Dynamics 365 Email activities linked to the Contact record via the Regarding lookup. Each email in the thread becomes a separate Email record with the sender, recipient, subject, and body preserved. We flatten the thread into a chronological sequence but note that Dynamics 365 does not display threaded conversation view natively; customers who rely on threaded email history may want to review the Microsoft Teams conversation integration post-migration.

AddressTwo

Tag

maps to

Microsoft Dynamics 365 Sales

Category

lossy
Fully supported

AddressTwo Contact tags migrate to Dynamics 365 Categories. We create a Category record per unique tag value and link it to the Contact via the CategoryId lookup. Tags used for segmentation are preserved as Category assignments so that filtering and reporting in Dynamics 365 reflect the original AddressTwo segmentation logic.

AddressTwo

Mass Email Campaign

maps to

Microsoft Dynamics 365 Sales

Campaign + CampaignMember

lossy
Fully supported

AddressTwo campaign membership (which contacts were sent a mass email) migrates to Dynamics 365 Campaign and CampaignMember records. We create a Campaign record per AddressTwo campaign, populate Campaign.Type and Campaign.Status, and add each Contact as a CampaignMember with MemberStatus reflecting sent status. Campaign-level analytics such as open rates and click rates are not available from AddressTwo's export and are not migrated.

AddressTwo

Custom Field (Contact)

maps to

Microsoft Dynamics 365 Sales

Custom Field (Contact)

lossy
Fully supported

AddressTwo custom fields on Contacts migrate as custom fields on the Dynamics 365 Contact form. We create fields in the destination environment before migration using the Dataverse custom field API, matching field types (text, number, date, picklist) to their Dynamics 365 equivalents. Fields without a clear Dynamics 365 type are flagged for customer review during scoping.

AddressTwo

Custom Field (Deal)

maps to

Microsoft Dynamics 365 Sales

Custom Field (Opportunity)

lossy
Fully supported

AddressTwo custom fields on Deals migrate as custom fields on the Dynamics 365 Opportunity form. Same approach as Contact custom fields: Dataverse field creation before import, type matching, and customer review for any fields without a clear destination equivalent.

AddressTwo

Owner

maps to

Microsoft Dynamics 365 Sales

User

1:1
Fully supported

AddressTwo record owners are resolved by email match against the Dynamics 365 User table in the destination org. Any AddressTwo owner without a matching Dynamics 365 User is held in a reconciliation queue for the customer's admin to provision before record import proceeds. OwnerId is a required reference on Opportunity and strongly recommended on Contact for reporting.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

AddressTwo logo

AddressTwo gotchas

High

API requires approved key obtained via email to support

High

No self-service data export or bulk download

Medium

Duplicate contact creation during email sync

Low

QuickBooks integration does not exist

Low

No formally documented API rate limits

Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales gotchas

High

Professional tier 15-table custom table limit blocks migrations

High

October 2024 pricing increase applies at renewal for all customers

Medium

Custom fields must be created in the UI before API writes

Medium

Power Platform request limits apply to bulk migrations

Medium

Activity records orphaned to inactive owners fail silently

Pair-specific challenges

  • AddressTwo requires an approved API key obtained via email to support

    AddressTwo does not offer a self-service developer portal or OAuth flow. The v2.0 API requires an approved key obtained by emailing [email protected], and there is no published sandbox or endpoint documentation for pre-validated extraction. If the API key is not granted before the migration window opens, we fall back to CSV export from AddressTwo, which may not include the full activity history or BCC email thread. We contact AddressTwo support on the customer's behalf during scoping to request API access. If API access is denied or delayed beyond two business days, we proceed with the CSV fallback and flag the scope reduction to the customer.

  • Company data must split into Account and Contact during migration

    AddressTwo stores company name, address, phone, and domain as fields on the Contact record rather than as a separate object. Microsoft Dynamics 365 Sales requires a separate Account record with the Contact as a child lookup. We handle this split as a first-phase transformation: we create Account records from the AddressTwo company fields, then import Contacts with AccountId pointing to the matched Account. This is not a data-loss risk but it requires a two-phase import (Accounts first, then Contacts) that extends the migration timeline by one to three days compared to a simple one-to-one object mapping.

  • AddressTwo mass email campaign analytics do not export

    AddressTwo tracks which contacts were sent a mass email campaign but does not export open rates, click rates, or delivery confirmation data. We migrate the campaign membership list (which contacts are members of which campaign) as Dynamics 365 Campaign and CampaignMember records, but campaign-level performance analytics require rebuilding in Dynamics 365 using its native campaign reporting once marketing activity resumes on the new platform.

  • Microsoft Dynamics 365 Sales requires User provisioning before owner assignment

    Microsoft Dynamics 365 Sales is licensed per user and requires an active User record for every owner assignment. AddressTwo has no per-user licensing, so a single AddressTwo account may have multiple Owner assignments across records without a corresponding user count limit. Before we can set OwnerId on imported Opportunities and Contacts, the customer must provision all necessary Dynamics 365 Users and confirm their email addresses match the owner emails in the AddressTwo export. We provide a reconciliation report listing every distinct owner email and flagging any without a matching User record.

Migration approach

Six steps for a successful AddressTwo to Microsoft Dynamics 365 Sales data migration

  1. Discovery and data export request

    We audit the AddressTwo account for record counts (Contacts, Companies, Deals, Activities, Notes), custom field definitions, pipeline stage names, owner assignments, and any active mass email campaigns. We file a data export request with AddressTwo support on the customer's behalf to obtain the most complete dataset available, and simultaneously attempt to secure an API key via email to [email protected]. The discovery output is a written scope document listing every object and custom field to migrate, the export method (API or CSV), and the owner reconciliation list.

  2. Owner reconciliation and Dynamics 365 User provisioning

    We extract every distinct owner email from the AddressTwo export and generate a reconciliation report against the destination Dynamics 365 org's User table. The customer's admin provisions any missing Users (must be active and licensed before OwnerId assignments can be saved on imported records). Migration cannot proceed past this step because Opportunity.OwnerId and Contact.OwnerId are required references in most Dynamics 365 configurations.

  3. Schema setup in Dynamics 365

    We create any custom fields on the Contact, Account, and Opportunity entities that correspond to AddressTwo custom fields identified during discovery. We configure a Sales Process in Dynamics 365 matching the AddressTwo pipeline stage names and probabilities. If the customer uses multiple AddressTwo pipelines, we create multiple Sales Processes or Record Types to preserve the pipeline separation. Custom fields are created via the Dataverse API or manually in the Dynamics 365 Solution before any data loads begin.

  4. Two-phase record import: Accounts then Contacts

    We import in strict dependency order. First: Account records created from AddressTwo company fields. Second: Contact records with AccountId lookup resolved to the corresponding Account. Any Contact without a company value in AddressTwo is imported as a standalone Contact and flagged for admin review. The de-duplication pass runs before Contact import to catch any duplicates generated by AddressTwo's BCC sync behavior.

  5. Opportunity import with Sales Process stage mapping

    We import Deals as Opportunities once all Account and Contact records are present. Each AddressTwo deal is mapped to a StageName value within the configured Sales Process, with deal value mapped to EstimatedValue and close date mapped to EstimatedCloseDate. OwnerId resolves via the owner reconciliation table. Closed-Lost and Closed-Won states map to the corresponding StateCode values in Dynamics 365.

  6. Activity and email history import

    We import Activity history (Tasks, Events) via the Dataverse API with conservative request staggering to avoid throttling. Email threads from AddressTwo's BCC collection migrate as individual Email activity records linked to the Contact. Notes migrate as Annotation records. We preserve original timestamps to maintain the chronological activity timeline. Each activity batch emits a row-count reconciliation report before the next batch begins.

  7. Cutover, validation, and automation handoff

    We freeze AddressTwo write access during cutover, run a final delta import of any records modified during the migration window, then hand the Dynamics 365 org to the customer as the system of record. We deliver a written automation inventory listing every AddressTwo workflow, task reminder, and automation rule that requires rebuild in Dynamics 365 Power Automate or the native workflow designer. Post-migration hypercare is available as a separate engagement.

Platform deep dives

Context on both ends of the pair

AddressTwo logo

AddressTwo

Source

Strengths

  • Flat-rate pricing at $14.95/month with no per-user fee — the simplest billing model in the small-business CRM category.
  • Perfect customer service score of 5.0/5 across verified reviews, with responsive named support staff.
  • Web-based with real-time multi-user access and no software to install or patch.
  • Built-in mass email and email BCC auto-population eliminates manual contact entry for inbound correspondence.
  • 14-day free trial with no credit card required lowers the barrier to evaluate fit.

Weaknesses

  • No accounting or bookkeeping integration — a documented gap that forces users to maintain a separate financial tool.
  • Limited reporting and dashboard features; multiple long-term users cite difficulty building custom reports.
  • Basic duplicate detection during contact sync causes double records that require manual cleanup.
  • API is not self-service — approved key required via email to support, limiting automated migration options.
  • No formally documented rate limits, bulk endpoints, or self-service data export makes programmatic extraction uncertain without direct engagement.
Microsoft Dynamics 365 Sales  logo

Microsoft Dynamics 365 Sales

Destination

Strengths

  • Native integration with Microsoft 365, Teams, Outlook, and SharePoint for unified productivity workflow
  • Unlimited custom tables and complex workflows on Enterprise tier enable deep customization for complex sales processes
  • AI-driven predictive analytics and deal intelligence on Enterprise and Premium tiers help sales teams prioritize pipeline
  • Dataverse unified data layer provides a consistent API and data model across all Dynamics 365 and Power Platform apps
  • Strong security model with Field-Level Security and Record Ownership rules for governance-conscious enterprises

Weaknesses

  • Sales Professional tier caps custom tables at 15, creating a migration ceiling for highly customized SMB environments
  • October 2024 pricing increases of $15 per user across all tiers apply to existing customers upon renewal
  • Implementation typically requires costly certified partners, adding 30–50% to total project cost
  • Updates and platform releases can disrupt customizations and plugins, requiring regression testing after each wave
  • Non-Microsoft integrations require additional configuration or middleware, limiting flexibility for heterogeneous tech stacks

Complexity grading

How hard is this migration?

Standard CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across AddressTwo and Microsoft Dynamics 365 Sales .

  • Object compatibility

    B

    2 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    AddressTwo: Not publicly documented.

  • Data volume sensitivity

    B

    AddressTwo doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your AddressTwo to Microsoft Dynamics 365 Sales migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about AddressTwo to Microsoft Dynamics 365 Sales data migrations

Answers to the questions buyers ask most during AddressTwo to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your AddressTwo to Microsoft Dynamics 365 Sales migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Straightforward migrations with under 5,000 Contacts, 2,000 Deals, and no complex activity history run two to four weeks. Migrations where the AddressTwo API key is granted (enabling structured extraction rather than CSV fallback) or involving custom fields, multiple deal stages, or bulk email history import extend to six to ten weeks because of the two-phase Account-Contact split, the owner reconciliation step, and the Dataverse batch import process. The initial discovery and scoping phase runs one to two weeks before any data moves.

Adjacent paths

Related migrations to explore

Ready when you are

Move from AddressTwo.
Land in Microsoft Dynamics 365 Sales , intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day