Project Management migration

Migrate from Fruux to Trello

Field-level mapping, validation, and rollback between Fruux and Trello. We move data and schema; workflows are rebuilt natively in Trello.

Fruux logo

Fruux

Source

Trello

Destination

Trello logo

Compatibility

58%

7 of 12

objects map 1:1 between Fruux and Trello.

Complexity

BStandard

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Fruux to Trello is a shift from a CalDAV/CardDAV sync service to a card-based project management platform. Fruux stores tasks as VTODO components in CalDAV collections, calendars as VEVENT components in iCalendar streams, and contacts as vCard blobs on CardDAV endpoints. Trello does not have native CalDAV, CardDAV, or contact management objects, so we transform every Fruux object into a Trello-native construct. Fruux task lists become Trello boards with lists per source-task-list; Fruux calendar events become Trello cards with start dates, due dates, and descriptions carrying the event metadata; Fruux contacts become cards in a dedicated Contacts board with custom fields holding phone, email, and address data. Fruux Bookmarks do not migrate because they use a proprietary format with no export specification. We do not migrate Fruux tasks as code or automations; Trello Butler rules and Power-Up automations require manual rebuild post-migration.

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

Fruux logo

Fruux

What's pushing teams away

  • Sync reliability is inconsistent, particularly with Apple's DAV servers, leading to calendar entries silently failing to propagate
  • No CSV import support — Fruux founder confirmed the service will only ever accept VCF and native CalDAV/CardDAV feeds, blocking spreadsheet-to-contact workflows
  • Internal server errors on calendar upload have been reported in third-party clients, suggesting backend instability
  • The service has a very small review footprint and limited community support compared to Google or iCloud alternatives
  • Users in privacy communities report difficulty exporting full datasets when they decide to leave, particularly for bookmarks and notes

Choosing

Trello logo

Trello

What's pulling them in

  • Free plan supports unlimited users and 10 boards, giving small teams full access to core Kanban functionality before any paid commitment is required.
  • The drag-and-drop board/card/Label interface requires no training, which reduces adoption friction and onboarding time across distributed teams.
  • Atlassian ecosystem integration with Jira, Confluence, and Bitbucket provides native cross-tool workflows for teams already using Atlassian tools.
  • Butler automation on paid tiers enables rule-based triggers without third-party integrations, covering basic workflow automation needs.
  • Simple visual task management with due dates, checklists, and member assignments keeps individual contributors and small teams organized without complexity.

Object mapping

How Fruux objects map to Trello

Each row shows how a Fruux object lands in Trello, including any object-level transformations, lookup resolution, or schema-design dependencies.

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

Fruux

VTODO (Task List item)

maps to

Trello

Card

1:1
Fully supported

Fruux stores task items as VTODO components within CalDAV task-list collections. Each distinct CalDAV task-list collection in Fruux becomes a dedicated Trello board; each VTODO item within that collection becomes a card in the corresponding board. The Fruux VTODO SUMMARY maps to the Trello card name. STATUS (COMPLETED/NEEDS-ACTION) maps to Trello card checklist completion or card archival at customer preference. DUE maps to Trello card Due Date; CREATED and LAST-MODIFIED timestamps are preserved as custom fields. Fruux's lack of a native assignee model means task ownership is preserved as a card label or custom member field at scoping discretion.

Fruux

CalDAV Task List Collection

maps to

Trello

Trello Board + List

1:many
Fully supported

Fruux allows multiple independent CalDAV task lists per user. Each source task-list collection is mapped to a separate Trello board. Within each board, a default To Do list is created. If the source task list contains sub-categories or tags, additional Trello Lists are created per category and cards are distributed accordingly. Fruux task lists with no internal categorization are migrated as a single board with one list. Teams using Fruux Team tier with multiple shared task lists receive one Trello board per source list.

Fruux

VEVENT (Calendar Event)

maps to

Trello

Card (Calendar Board)

1:1
Fully supported

Fruux calendars are CalDAV collections containing iCalendar VEVENT components with RFC 5545 properties (DTSTART, DTEND, SUMMARY, DESCRIPTION, LOCATION, RRULE for recurring events). Each Fruux calendar becomes a dedicated Trello board. Each VEVENT becomes a card in that board with DTSTART mapped to card start date, DTEND mapped to card due date if applicable, SUMMARY as card name, DESCRIPTION carrying the VEVENT description, and LOCATION as a custom field. Recurrence rules (RRULE) are preserved as text in the card description because Trello has no native recurrence model; the customer rebuilds recurring cards via Butler rules post-migration.

Fruux

Calendar Subscription (webcal/ICS feed)

maps to

Trello

Card (URL attachment or link field)

1:1
Fully supported

Fruux iCalendar subscriptions appear as read-only CalDAV calendars pointing to external webcal or ICS feed URLs. We extract the subscription URL and create a Trello card in the corresponding calendar board with the subscription URL stored as a link attachment or as a custom URL field. If the subscription URL is private (requires authentication), we flag this at scoping and document the URL so the customer's admin can re-register the subscription in Trello or a calendar app. Trello does not natively refresh ICS subscriptions, so calendar-level sync requires a third-party integration or manual re-subscription.

Fruux

vCard Contact (RFC 6350)

maps to

Trello

Card (Contacts Board)

lossy
Fully supported

Fruux contacts are exported via CardDAV as vCard 3.0 or 4.0 blobs (FN, N, EMAIL, TEL, ADR, ORG, PHOTO). Trello has no native contact management object, so we create a dedicated Contacts Trello board and model each Fruux contact as a card. FN becomes the card name. EMAIL (work and home), TEL (work and home), ADR, and ORG map to Trello Custom Fields (Text type for email and org, Text for phone). Fruux multi-address-book support maps to separate Trello boards per address book. Contact photos are stored as card attachments if the photo blob is small enough; large photos are flagged for manual re-upload.

Fruux

CardDAV Address Book

maps to

Trello

Trello Board

1:1
Fully supported

Fruux supports multiple CardDAV address books per user, each containing vCard contact records. Each source address book is mapped to a separate Trello board in the destination. Board naming follows the Fruux address book display name. Contacts within each address book become cards in the corresponding board as described in the vCard mapping. If the destination workspace has naming conventions for contact boards, we apply them during configuration.

Fruux

Fruux Task List (multiple task lists)

maps to

Trello

Multiple Trello Boards

1:many
Fully supported

Fruux allows users to create multiple independent task lists. When migrating to Trello, each source Fruux task list is split into its own Trello board. If the customer uses Fruux Team tier with shared team task lists, each shared list becomes a Trello board shared with the relevant workspace members. Fruux Pro users with up to 10 device sync but single personal task lists receive one Trello board per source list. We flag the list-to-board split at scoping and confirm the desired workspace organization before migration begins.

Fruux

Fruux Note (proprietary format)

maps to

Trello

Card Description

1:1
Fully supported

Fruux Notes are stored in a proprietary format with no CardDAV or CalDAV binding. We attempt to export accessible Notes via the Fruux web application scraping path and convert the content to plain text. Each Note becomes a Trello card in a dedicated Notes board (or a designated list within an existing board per customer preference) with the Note content as the card description. Rich formatting, embedded media, and Fruux-specific styling cannot be guaranteed to transfer. Customers with heavy Notes usage are warned that formatting loss is expected and should plan for manual review post-migration.

Fruux

Fruux Bookmark

maps to

Trello

Card Description (link documentation)

1:1
Fully supported

Fruux Bookmarks are stored in a proprietary internal format not accessible via CardDAV or CalDAV. The web API documentation does not define bookmark export endpoints. We attempt web application scraping but cannot guarantee structural fidelity. Migrated Bookmarks are documented as plain-text URL entries in a dedicated Trello board's cards, with the bookmark title as card name and URL as a custom field or card description link. Customers relying on Fruux Bookmarks for active workflow should plan to recreate bookmark collections manually in Trello or a dedicated bookmark manager post-migration.

Fruux

Calendar Subscription (webcal/ICS feed)

maps to

Trello

Card Custom URL Field

1:1
Fully supported

Fruux iCalendar subscriptions are stored as external ICS or webcal feed URLs within the Fruux CalDAV hierarchy. We export each subscription URL and create a Trello card in the corresponding calendar board with the URL stored as a custom URL field. Subscription URLs requiring authentication or containing private calendar data are flagged during scoping for the customer's admin to re-register post-migration. Trello does not natively refresh ICS subscriptions, so teams relying on live calendar sync from Fruux feeds need to re-establish those subscriptions in a compatible calendar client (Google Calendar, Fantastical, or similar) alongside Trello.

Fruux

Fruux Contact Groups

maps to

Trello

Trello Labels

lossy
Fully supported

Fruux CardDAV address books support contact groups (GROUP vCard component or X-ADDRESSBOOKSERVER-MEMBER references). When migrating to Trello, contact groups are mapped to Trello Labels on the corresponding Contacts board cards. Label names match the Fruux group name. If a contact belongs to multiple groups, it receives multiple labels. Label color assignment is configured during migration to provide visual grouping in the Contacts board. Customers choosing to use Labels as the group-semantic equivalent confirm the labeling scheme during scoping.

Fruux

Conflict Resolution Artifacts

maps to

Trello

Trello Card (duplicate flagged)

lossy
Fully supported

Fruux preserves server-side copies when the same record is edited on multiple devices simultaneously, creating duplicate contacts or events. We detect duplicates by comparing UID fields and FN/NAME fields during the transform phase. Suspected duplicates are imported into Trello as cards with a Duplicate Flag label, and a deduplication report is delivered to the customer for manual review before deletion. For contacts, UID comparison is definitive; for calendar events, DTSTART plus SUMMARY comparison is used as a proxy. This approach prevents silent duplicate creation while giving the customer final authority over which record to retain.

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.

Fruux logo

Fruux gotchas

High

No CSV import blocks bulk contact migrations

High

Sync failures with Apple DAV clients cause data loss

Medium

Bookmarks and Notes have no exportable standard format

Low

No public rate-limit or quota documentation

Medium

Conflict-resolution artifacts require deduplication

Trello logo

Trello gotchas

High

Billing model uses maximum seat quantity at term midpoint

Medium

Custom Field data historically stored in pluginData

Medium

API rate limits are token-gated and can block bulk migration

Medium

Guest-to-paid seat conversion triggers on multi-board membership

Low

Automation command runs are capped per plan and overage triggers upgrade pressure

Pair-specific challenges

  • Fruux conflict-resolution artifacts require deduplication

    Fruux's conflict resolution creates server-side copies when the same record is edited on multiple devices. These copies appear as duplicate contacts or events after migration if not handled. We detect duplicates by comparing UID fields and FN/NAME fields during the transform phase, flag suspected duplicates with a label in Trello, and deliver a deduplication report for customer review before deletion. Skipping this step results in duplicate cards appearing in Trello boards with no indication of which is authoritative.

  • Trello has no native calendar or recurring event model

    Fruux VEVENTs carry full iCalendar semantics including RRULE recurrence, EXDATE exceptions, and VTIMEZONE components. Trello cards support due dates and start dates but have no native recurrence. Recurrence patterns from Fruux are preserved as plain-text descriptions of the RRULE, and the customer rebuilds recurring events via Butler rules (Trello's built-in automation) post-migration. Teams relying on Fruux calendar recurrence should expect manual reconfiguration of recurring cards in Trello.

  • Fruux Bookmarks and Notes have no standard export

    Fruux Bookmarks and Notes are proprietary objects with no CardDAV or CalDAV binding and no documented web API endpoint. We attempt web application scraping for both but cannot guarantee content completeness, formatting fidelity, or structural preservation. Customers with heavy Bookmarks or Notes usage receive a warning at scoping that these objects require manual recreation in Trello or a dedicated bookmark and notes tool. The migration scope for these object types is best-effort, not guaranteed.

  • Fruux has no published rate-limit documentation

    Unlike platforms with documented API quotas, Fruux has not published rate-limit headers or daily request quotas. We implement conservative request pacing with retry-on-503 logic during CalDAV and CardDAV extraction. This pacing extends the extraction phase proportionally to dataset size. Migrations exceeding 10,000 total records (tasks plus events plus contacts) may require additional time due to conservative throttling. We flag pacing-adjusted timelines at scoping.

  • Trello Butler and Power-Up automations do not migrate

    Fruux has no automation or workflow engine; Trello Butler rules and Power-Up automations are platform-native features with no Fruux equivalent. We do not migrate Trello automations as a migration deliverable because Fruux has no workflow configuration to export. Any existing Butler rules on a target Trello workspace (if this is a secondary migration) require manual rebuild. Butler rebuild documentation is available as a separate FlitStack AI engagement but is not included in standard migration scope.

Migration approach

Six steps for a successful Fruux to Trello data migration

  1. Fruux account audit and object inventory

    We authenticate against the Fruux CalDAV and CardDAV principal URL (dav.fruux.com) using the customer's credentials. We enumerate all reachable collections: CalDAV calendar-home-set (VEVENT and VTODO collections) and CardDAV addressbook-home-set (vCard collections). We count distinct calendars, task lists, contacts, and subscription feeds. We identify conflict-resolution artifacts by querying each collection for records with duplicate UID prefixes. We flag Bookmarks and Notes accessible via web scraping for best-effort migration and confirm the inventory with the customer before extraction begins.

  2. CalDAV and CardDAV bulk extraction

    We stream full exports from each Fruux collection using CalDAV REPORT queries (calendar-query for VEVENT, calendar-multiget for VTODO) and CardDAV addressbook-multiget for vCard contacts. We download RFC-compliant iCalendar and vCard blobs rather than any proprietary Fruux format. For calendar subscriptions, we extract the webcal or ICS subscription URL from the Fruux collection properties. We implement conservative request pacing with retry-on-503 throughout extraction due to Fruux's undocumented rate limits. The extraction phase produces a complete snapshot of all migratable Fruux data before any writes to Trello.

  3. Transform and deduplication

    We transform Fruux data into Trello API-compatible payloads. VTODO items are mapped to Trello card creation payloads with due dates, start dates, and descriptions. VEVENT items are mapped to cards in their respective calendar boards. vCard contacts are mapped to cards in a Contacts board with custom fields for email, phone, address, and organization. We apply the deduplication logic against the transform output, flagging suspected duplicates with a label. RRULE recurrence strings are extracted as plain-text descriptions on each card. Fruux contact groups are mapped to Trello Labels during this phase.

  4. Trello workspace and board provisioning

    We authenticate against the Trello REST API using the customer's Trello API key and token. We create one Trello board per source Fruux calendar, one Trello board per source Fruux task list, and one Trello board per source Fruux address book. For contacts, we also configure Custom Fields on the Contacts board: Email (Text), Phone (Text), Address (Text), Organization (Text), and Contact Group (Labels). We create default Lists (To Do, Doing, Done) within each new board. Board visibility is set to Private by default unless the customer specifies Workspace visibility during scoping.

  5. Bulk card creation and parent-record resolution

    We create Trello cards via the Trello REST API (POST /1/cards) in dependency order. Calendar boards are populated first (one card per VEVENT), followed by task-list boards (one card per VTODO), followed by the Contacts board. For each card, we resolve the correct List by matching source Fruux task-list or calendar context. We set due dates, start dates, descriptions, and custom field values from the transform output. Labels are applied for contact groups and duplicate flags. We implement batch creation with Trello's documented rate limits and exponential backoff on 429 responses. Attachments for contact photos are uploaded via Trello's attachment API if under the size limit.

  6. Validation, deduplication handoff, and migration report

    We run post-migration reconciliation comparing Fruux record counts against Trello card counts per board. We verify that due dates, start dates, descriptions, and custom field values are populated on a representative sample of cards. We deliver the deduplication report listing flagged cards with Duplicate Flag labels and original UID references. We deliver a written inventory of Fruux Bookmarks and Notes with best-effort content where extracted. We do not rebuild Butler rules, Power-Up automations, or calendar subscriptions; the report documents these for the customer's admin to rebuild post-migration.

Platform deep dives

Context on both ends of the pair

Fruux logo

Fruux

Source

Strengths

  • Built on SabreDAV, one of the most widely deployed open-source CalDAV/CardDAV implementations in production
  • No vendor lock-in — data is stored in open RFC formats readable by any standards-compliant client
  • Free tier includes unlimited contacts, calendars, and tasks with no per-record billing
  • Supports conflict resolution when the same record is edited on multiple devices simultaneously
  • Runs on AWS with SSL encryption, automatic backups, and constant infrastructure updates

Weaknesses

  • No CSV import capability — Fruux accepts only VCF and native CardDAV feeds, blocking bulk contact migrations from spreadsheets
  • Sync reliability issues have been reported when connecting to Apple DAV servers, causing intermittent calendar upload failures
  • Very small user base and limited community support compared to Google Calendar or iCloud
  • Bookmark and note storage is proprietary with no public export specification
  • The service has not published a public API rate-limit or quota document, making migration throughput estimation difficult
Trello logo

Trello

Destination

Strengths

  • Generous free tier with unlimited users and 10 boards, the lowest barrier to entry among major project management tools.
  • Intuitive drag-and-drop Kanban interface requires no training or onboarding documentation.
  • Deep Atlassian integration with Jira, Confluence, and Bitbucket for teams already in the ecosystem.
  • Built-in Butler automation covers rule-based triggers without requiring third-party integrations.
  • REST API with comprehensive documentation enables programmatic access to all core objects.

Weaknesses

  • Reporting and analytics are absent, with no built-in velocity tracking, burndown charts, or historical performance metrics.
  • The flat board/list/card data model scales poorly for complex projects requiring hierarchical task structures.
  • Customization is limited compared to platforms like Asana, monday.com, or Jira that offer richer field types and workflow configuration.
  • Advanced views (Timeline, Dashboard) require Premium and are not available on Standard, inflating total cost for teams needing visibility features.
  • Guest user billing rules are confusing and prone to accidental seat overages when guests join multiple boards.

Complexity grading

How hard is this migration?

Standard Project Management migration. 3 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 Fruux and Trello.

  • Object compatibility

    B

    3 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

    Fruux: Not publicly documented — Fruux has not published rate-limit headers or quota thresholds.

  • Data volume sensitivity

    B

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

Estimator

Estimate your Fruux to Trello 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 Fruux to Trello data migrations

Answers to the questions buyers ask most during Fruux to Trello migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Fruux to Trello migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between two and four weeks for accounts with up to 5,000 total records (tasks, calendar events, contacts) and fewer than 10 source task lists. Migrations exceeding 5,000 records, multiple Fruux calendars, or customer-supplied conflict-resolution disambiguation extend to four to six weeks. The extraction phase scales with dataset size due to Fruux's undocumented rate limits, which require conservative request pacing.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Fruux.
Land in Trello, 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