CRM migration

Migrate from Blackbaud to Microsoft Dynamics 365 Sales

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

Blackbaud logo

Blackbaud

Source

Microsoft Dynamics 365 Sales

Destination

Microsoft Dynamics 365 Sales  logo

Compatibility

92%

11 of 12

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

Complexity

BStandard

Timeline

72–96 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Blackbaud models constituent relationships across individuals, households, and organizations with gift tracking, fund accounting, and campaign attribution baked into the core schema. Dynamics 365 Sales uses the Microsoft Dataverse foundation — Account and Contact as the primary entities, Lead for early-stage prospects, and Opportunity for pipeline management tied to sales processes. The structural gap is significant: Blackbaud's constituent-centric gift model has no direct Opportunity equivalent in Dynamics 365 without field mapping and custom opportunity fields for fund codes, appeal designations, and gift soft credits. We extract Blackbaud data via the SKY API (10 calls/second cap, 25,000 calls/24-hour quota on Standard tier) and load into Dynamics 365 via Dataverse Web API. Constituents split into Dynamics 365 Contact records — organizations become Account records with a primary Contact link. Gifts translate into custom Opportunity records using gift amount, gift date, and fund as mapped fields. Campaign membership from Blackbaud maps to Dynamics 365 Campaign and Campaign Response records. Custom fields on constituents and gifts require manual creation in Dynamics 365 before migration — we deliver a custom-field creation plan with exact schema definitions so your admin pre-builds the destination before data arrives. Workflows, appeal letters, and fund accounting rules do not migrate — they require Dynamics 365-side rebuild using Power Automate flows and Dynamics 365 marketing capabilities. We export workflow definitions as a reference document for your implementation team. The migration sequence is: Constituents → Accounts and Contacts, then Gifts → Opportunities with fund-code fields, then Actions and Notes → Tasks and Annotations, then Campaign membership.

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

Blackbaud logo

Blackbaud

What's pushing teams away

  • NXT web interface is significantly slower than the legacy Database View for bulk data entry and record cleanup, with multi-window navigation that extends simple edits into multi-step processes.
  • Steep implementation and ongoing administrative complexity requires dedicated Blackbaud-certified staff, creating vendor lock-in risk and significant switching costs.
  • Personalized pricing without public tiers makes budget planning difficult and creates negotiation asymmetry, especially for organizations mid-contract evaluating alternatives.
  • Frequent product updates and UI changes disrupt established workflows, with staff reporting reduced productivity as they adapt to new interfaces every 12-18 months.
  • SKY API rate limits of 10 calls per second and 25,000 calls per 24 hours on Standard tier constrain automation-heavy workflows and third-party integrations.

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 Blackbaud objects map to Microsoft Dynamics 365 Sales

Each row shows how a Blackbaud 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.

Blackbaud

Constituent (Individual)

maps to

Microsoft Dynamics 365 Sales

Contact

1:1
Fully supported

Blackbaud individual constituents map 1:1 to Dynamics 365 Contact records. The primary email address maps to Email, phone numbers to Telephone1/2/3, and mailing address to the composite address fields. Original constituent ID stored as Blackbaud_ID__c for traceability and delta-run de-duplication. Constituents without a primary address default to a placeholder address flagged in the migration report.

Blackbaud

Constituent (Organization)

maps to

Microsoft Dynamics 365 Sales

Account

1:1
Fully supported

Blackbaud organization constituents map to Dynamics 365 Account records. Organization name maps to Account.Name, website to Website, industry to Industry (value-mapping from Blackbaud's industry codes to Dynamics 365 pick-list). Parent-child organizational hierarchies in Blackbaud map to Account.ParentAccountId. Multi-contact organizations generate one Account record plus a primary Contact record for the primary gift officer or organizational contact.

Blackbaud

Constituent (Household)

maps to

Microsoft Dynamics 365 Sales

Contact + Account Contact Relationship

1:1
Fully supported

Blackbaud households (family giving units) have no direct Dynamics 365 equivalent. The primary member becomes the primary Contact record; secondary household members are created as related Contacts with an Account Contact Relationship record linking them to a shared household Account. Giving totals from the Blackbaud household record are preserved as a custom currency field on the primary Contact. Your team decides whether to collapse household structure or maintain it via the relationship model.

Blackbaud

Gift

maps to

Microsoft Dynamics 365 Sales

Opportunity

1:1
Fully supported

Blackbaud Gift records become Dynamics 365 Opportunity records — gift amount maps to Amount, gift date maps to CloseDate (set to actual gift date), and gift description maps to Name. Fund code and appeal designation from the gift are stored as custom Opportunity fields (Fund_Code__c, Appeal__c). Soft-credit gifts require secondary Opportunity records or a custom junction object depending on whether the soft-credit constituent should appear as a separate Opportunity or a participant on the primary gift record.

Blackbaud

Campaign

maps to

Microsoft Dynamics 365 Sales

Campaign

1:1
Fully supported

Blackbaud Campaigns map directly to Dynamics 365 Campaign records — campaign name to Name, start/end dates to StartDate/EndDate, budget to BudgetedCost. Campaign type codes (Annual Fund, Capital Campaign, Event) map to the Dynamics 365 Campaign Type pick-list via value-mapping. Campaign goals from Blackbaud are stored as custom numeric fields on the Dynamics Campaign record since Dynamics 365 Campaign does not have a native goal amount field.

Blackbaud

Gift Appeal

maps to

Microsoft Dynamics 365 Sales

Campaign (child) or custom Opportunity field

1:1
Fully supported

Blackbaud Appeals are sub-objects of Campaigns with their own budget, goal, and designation. In Dynamics 365, each Appeal maps to a child Campaign record under the parent Blackbaud Campaign, preserving the hierarchy. If the Dynamics 365 environment uses only one Campaign model, Appeal designation is stored as Appeal__c on the related Opportunity/Gift record instead. We surface the chosen approach in the migration plan before execution.

Blackbaud

Action

maps to

Microsoft Dynamics 365 Sales

Task

1:1
Fully supported

Blackbaud Action records (reminders, to-dos, call logs) map to Dynamics 365 Task records. Subject maps to Subject, action date to ScheduledEnd, description to Description. Action status maps to StatusCode (Open/Completed). Owner resolution happens by email match against Dynamics 365 users — unmatched Action owners are flagged and assigned to a migration owner for resolution before the full run.

Blackbaud

Note / Attachment

maps to

Microsoft Dynamics 365 Sales

Note (Annotation)

1:1
Fully supported

Blackbaud constituent notes and document attachments map to Dynamics 365 Annotation records. Note text maps to Notetext, attachment files are downloaded from Blackbaud's file storage and re-uploaded to Dataverse file storage (max 128MB per file). Inline images in notes are extracted and re-hosted as separate file annotations. Rich-text formatting is preserved where Dynamics 365 Notetext supports it — complex formatting is flattened to plain text fallback.

Blackbaud

Custom Field (Constituent, Gift, Action)

maps to

Microsoft Dynamics 365 Sales

Custom Column (Contact, Opportunity, Task)

1:1
Fully supported

Blackbaud custom field categories (Boolean, CodeTableEntry, Currency, Date, Number, Text) require corresponding custom columns in Dynamics 365. We deliver a custom-column creation plan with exact schema definitions (column name, data type, pick-list values) so your Dynamics 365 admin creates all custom fields before the migration run. Custom fields on constituents with CodeTableEntry type require value-by-value pick-list mapping against Dynamics 365 option set definitions. Fields must exist in Dynamics 365 before data can land in them.

Blackbaud

Recurring Gift / Pledge

maps to

Microsoft Dynamics 365 Sales

Opportunity (multiple records) or custom Pledge__c table

1:many
Fully supported

Blackbaud recurring gifts and pledges are split into individual installment Opportunity records in Dynamics 365 — one Opportunity per installment payment with pledge installment dates as CloseDate values. Pledge总额 is stored as a custom field (Pledge_Total__c) on the first installment Opportunity for reporting continuity. Alternatively, your team can choose a custom Pledge entity if Dynamics 365 Sales Enterprise is licensed, which allows unlimited custom tables — we present both options in the migration plan.

Blackbaud

Membership

maps to

Microsoft Dynamics 365 Sales

Contact or Account (custom fields) or custom Membership table

1:1
Fully supported

Blackbaud membership records (included in some Blackbaud CRM tiers) have no direct Dynamics 365 equivalent. Membership level, expiration date, and member ID are stored as custom fields on the Contact record (Member_Level__c, Membership_Expiration__c, Member_ID__c). If your organization runs membership events and benefits tracking, a custom Membership table in Dataverse may be warranted — we assess this during the migration planning call.

Blackbaud

User / Owner

maps to

Microsoft Dynamics 365 Sales

SystemUser

1:1
Fully supported

Blackbaud user and gift officer records are resolved against Dynamics 365 SystemUser records by email address match. The Blackbaud user ID is stored as Blackbaud_Owner_ID__c on migrated records for audit traceability. Users present in Blackbaud but not in Dynamics 365 are flagged before migration — your team either provisions them in Dynamics 365 first or reassigns their records to an existing user.

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.

Blackbaud logo

Blackbaud gotchas

High

SKY API rate limits constrain bulk migration throughput

Medium

NXT web view enforces different data entry workflows than legacy Database view

Medium

Custom field code tables must be pre-created in the destination

Low

File relocation takes 2-6 hours and is not resumable

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

  • Gift-to-Opportunity translation requires custom fields that must exist before data lands

    Dynamics 365 Sales has no native fund-code, appeal-designation, or soft-credit field on the Opportunity entity. These are core Blackbaud gift properties that carry reporting and audit meaning. We cannot write fund code data into Dynamics 365 fields that do not exist — your Dynamics 365 admin must create Fund_Code__c, Appeal__c, and Soft_Credit_Contact__c as custom columns before the migration run. We deliver the exact schema definitions in the pre-migration plan. This is the single most common cause of migration delays for Blackbaud-to-Dynamics 365 projects.

  • SKY API rate limits cap export throughput on large Blackbaud datasets

    Blackbaud SKY API Standard Edition enforces a 10 calls/second throttle and a 25,000-call daily quota shared across all production apps in your team. For a migration with 100,000 constituents plus gift history (potentially 500,000+ individual API calls), this quota can be exhausted in a single migration run day. We request a quota increase from your Blackbaud Account Executive before scheduling the migration. We also implement request queuing and retry logic to handle 429 and 403 throttle responses gracefully without data loss.

  • Household constituent model collapses to a Contact + relationship structure

    Blackbaud households represent family giving units with a primary member, spouse, and other family members all linked to a single household record with aggregate giving totals. Dynamics 365 has no household entity — individual family members become separate Contact records linked by an Account Contact Relationship record pointing to a shared household Account. The aggregate lifetime giving total on the Blackbaud household must be calculated pre-migration and stored as a custom field on the primary Contact. If your team relies on household-level reports, those reports require rebuilding in Dynamics 365 using Power BI.

  • Sales Professional tier caps custom tables at 15 — Enterprise unlocks unlimited

    If your organization licenses Dynamics 365 Sales Professional ($65/user/month), you are limited to 15 custom tables (entities) in Dataverse. Salesforce CRM migrations to Dynamics 365 commonly require more than 15 custom tables when gift-specific fields and pledge tracking are modeled as separate tables. Before migration, confirm your licensed tier. If a custom Pledge entity is required and you are on Sales Professional, your team must either upgrade to Sales Enterprise ($105/user/month) or use the custom Opportunity-field approach we document in the object mapping plan.

  • Recurring gift installments require upfront scope decision on Opportunity-per-installment vs. custom table

    Blackbaud recurring gifts store the schedule and total pledge amount as a single record with installment child records. Dynamics 365 Opportunity tracks one amount and one close date. Each installment gift in Blackbaud must therefore either (a) become its own Opportunity record with the installment amount and schedule date, or (b) use a custom Pledge__c custom table with a master-detail relationship to Opportunity. Approach (a) generates many Opportunity records; approach (b) requires a custom Dataverse table. We present both options in the migration plan with volume estimates so your team and Dynamics 365 admin make the call before migration.

Migration approach

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

  1. Assess Blackbaud API access tier and export the constituent-gift schema

    Before any data moves, we verify your Blackbaud SKY API subscription tier and request a quota increase if your record counts suggest the Standard 25,000-call daily quota will be exhausted. We run a schema discovery pass against your Blackbaud environment: constituent fields, custom field categories, gift fields, campaign structure, and action records. This produces the field-level mapping inventory we use to build the custom-column creation plan for Dynamics 365 and confirms which Blackbaud API endpoints we will call and at what estimated volume.

  2. Build the Dynamics 365 custom-column schema and user provisioning plan

    We deliver a Dynamics 365 schema setup plan listing every custom column required on Contact, Account, Opportunity, Campaign, and Task — with exact column names, data types, and option-set values pulled from Blackbaud's CodeTableEntry custom fields. Your Dynamics 365 admin (or our team) creates these columns before migration day. We also produce an owner-resolution report matching Blackbaud user email addresses to Dynamics 365 SystemUser records, flagging any Blackbaud users who do not yet exist in your Dynamics 365 tenant.

  3. Migrate accounts and contacts before opportunities, sequencing foreign-key dependencies

    Dynamics 365 requires Account records to exist before Contacts can reference them via AccountId lookup, and Contact records before Opportunity records can link via OpportunityContactRoles. We sequence the migration so Organizations → Accounts and Individuals → Contacts run first, resolving the constituent-to-account relationship from Blackbaud. Then Campaigns and Appeals are created as Dynamics 365 Campaign records. Gift records are held in a staging queue until their constituent link is resolved — each gift becomes an Opportunity with the constituent's Dynamics 365 ContactId or AccountId populated correctly.

  4. Run a sample migration slice with field-level diff against Dynamics 365

    A representative sample — typically 200–500 records spanning constituents, organizations, gifts, and a campaign — migrates first. We generate a field-level diff report comparing source Blackbaud values against destination Dynamics 365 field values for every mapped column. Your team reviews the diff to verify fund-code mapping, appeal attribution, owner resolution, and household relationship recreation. No records commit permanently until you sign off on the sample diff. This step catches custom field type mismatches and value-mapping gaps before the full run.

  5. Execute full migration with delta-pickup window and audit log

    The full migration runs against your Dynamics 365 environment using the Dataverse Web API. A delta-pickup window — typically 24–48 hours after the full run completes — captures any new or modified records created in Blackbaud during the cutover window. Every operation is logged to an audit table including source record ID, destination record ID, operation type, and timestamp. One-click rollback reverts all migrated records to their pre-migration state if reconciliation fails. After rollback verification, your team can re-run from the delta snapshot.

Platform deep dives

Context on both ends of the pair

Blackbaud logo

Blackbaud

Source

Strengths

  • Market-leading nonprofit fundraising heritage with Raiser's Edge used by the majority of large US universities and hospitals.
  • Constituent-centric data model supporting Individuals, Households, Groups, and Corporations with relationship mapping.
  • Native fund accounting and GL integration with Financial Edge NXT for organizations on the full Blackbaud stack.
  • Comprehensive export and import modules supporting bulk data extraction for migration scoping.
  • SKY API with OAuth 2.0 authentication and documented endpoints for programmatic data access.

Weaknesses

  • SKY API Standard Edition capped at 10 calls/second and 25,000 calls/day limits real-time integrations.
  • NXT web interface is widely reported as slower and less efficient than legacy Database View for bulk operations.
  • Pricing is opaque with no public tiers, requiring direct sales engagement and multi-year contracts.
  • Frequent UI updates disrupt established staff workflows and require ongoing training investments.
  • Custom field types and code table dependencies create mapping complexity in migrations to non-Blackbaud destinations.
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. 1 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 Blackbaud and Microsoft Dynamics 365 Sales .

  • Object compatibility

    B

    1 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

    Blackbaud: 10 calls/second (fixed, cannot be increased) and 25,000 calls per 24 hours on Standard Edition. Daily quota can be increased via Account Executive..

  • Data volume sensitivity

    A

    Blackbaud exposes a bulk API — large-volume migrations stream efficiently.

Estimator

Estimate your Blackbaud 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 Blackbaud to Microsoft Dynamics 365 Sales data migrations

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

Can't find your answer?

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

Book a free 30 minute consultation

Most Blackbaud-to-Dynamics 365 migrations complete in 72–96 hours of clock time for under 50,000 constituent records and associated gift histories. Larger setups with 500,000+ records or complex custom field schemas — particularly organizations with recurring gift pledges, multi-fund campaign structures, and household models — extend to 10–14 days. The longest planning step is creating the Dynamics 365 custom column schema for fund codes, appeal designations, and gift soft credits before data can land.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Blackbaud.
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