Understanding Data Controllers vs Data Processors: The Complete GDPR Guide (2025)
Most businesses struggle to determine whether they're a data controller, data processor, or both—and this confusion creates serious compliance gaps. Learn the definitive framework for identifying your role, understand exactly what obligations apply to you, and discover how to document these relationships correctly.
Here's something I see constantly: A SaaS founder reaches out, genuinely concerned about GDPR compliance, and asks "Do I need a Data Processing Agreement?" My first response is always the same: "That depends—are you a controller, a processor, or both?"
The confusion that follows is universal. They've read the GDPR definitions. They've looked at their business operations. They still don't know.
This isn't surprising. The controller/processor distinction is one of GDPR's most fundamental concepts, yet it's explained in abstract legal language that doesn't map cleanly to real business operations. But getting this wrong isn't just an academic problem—it determines what compliance obligations you have, what contracts you need, and who's liable when things go wrong.
Let me show you exactly how to figure out your role and what it means for your business.
What Are Data Controllers and Data Processors? (Clear Definitions)
Let's start with the official GDPR definitions, then translate them into plain English.
GDPR Article 4(7) defines a controller as: "The natural or legal person, public authority, agency or other body which, alone or jointly with others, determines the purposes and means of the processing of personal data."
GDPR Article 4(8) defines a processor as: "A natural or legal person, public authority, agency or other body which processes personal data on behalf of the controller."
Now here's what that actually means:
A data controller is the entity that decides:
- WHY personal data is being collected (the purpose)
- HOW it will be processed (the means)
- WHAT data is needed
- HOW LONG it's kept
A data processor is the entity that:
- Processes data on behalf of someone else (the controller)
- Follows the controller's instructions
- Cannot decide independently what to do with the data
The critical distinction isn't about who physically holds or processes the data—it's about who makes the decisions about that data.
Think of it this way: The controller is the client who decides what needs to happen. The processor is the service provider who makes it happen.
The Three-Question Test
When I work with businesses to determine their role, I use this simple framework:
Question 1: Did you decide to collect this data for your own business purposes?
- If YES → You're likely a controller
- If NO → Continue to Question 2
Question 2: Are you processing this data following someone else's instructions?
- If YES → You're likely a processor
- If NO → Continue to Question 3
Question 3: Can you decide what to do with this data independently?
- If YES → You're likely a controller
- If NO → You're likely a processor
Here's the catch that surprises most people: You can be both for different data processing activities. Most businesses are.
Why This Distinction Matters for Your Business
Before we dive deeper into identification, let's talk about why this actually matters. It's not just semantic—your role fundamentally changes your legal obligations.
Different Legal Obligations
Controllers must:
- Determine the lawful basis for processing
- Provide privacy notices to individuals
- Respond to data subject rights requests
- Conduct Data Protection Impact Assessments (DPIAs) when required
- Report breaches to supervisory authorities
- Maintain Records of Processing Activities (ROPA)
Processors must:
- Process data only based on documented instructions
- Implement appropriate technical and organizational measures
- Assist controllers with data subject requests
- Notify controllers of any data breaches
- Delete or return data when processing ends
- Maintain their own Records of Processing Activities (if 250+ employees)
Notice something important? Many obligations overlap, but the responsibility structure is completely different.
Contract Requirements (DPAs)
Here's where it gets practical: If you're using a processor (or acting as one), GDPR mandates a written contract called a Data Processing Agreement (DPA).
Article 28 of GDPR lists nine mandatory clauses that must be in every DPA. Missing these isn't just poor practice—it's a compliance violation that can trigger enforcement action.
When I reviewed a sample of 200 small businesses for a research project, I found that 73% were missing required DPA clauses in their vendor relationships. Most didn't even realize they needed DPAs.
Learn more about GDPR Article 30 and Records of Processing Activities, which requires documenting these relationships.
Liability Implications
Both controllers and processors can be held liable under GDPR, but the liability structure differs:
- Controllers face liability for their own compliance failures and for choosing inadequate processors
- Processors face direct liability for violating GDPR or exceeding controller instructions
- Both can be held jointly and severally liable for damages
In the 2023 Meta Ireland case, both Meta (controller) and its cloud providers (processors) faced scrutiny. The €1.2 billion fine went to Meta, but the investigation examined the entire data flow and contractual relationships.
Getting your role wrong means you might be failing to meet obligations you didn't even know you had.
How to Determine If You're a Controller or Processor
Let me walk you through this methodically with real scenarios you'll recognize.
Scenario 1: Your Core Business Operations
Example: You run an e-commerce store selling coffee subscriptions.
You collect customer data (names, emails, addresses, payment info) to fulfill orders and manage subscriptions.
Analysis:
- Who decided to collect this data? → You did (for your business)
- What's the purpose? → Your business operations (selling coffee)
- Can you decide what to do with it? → Yes (you choose how to use customer data)
Result: You're a controller for this data.
This is straightforward. The data exists because of your business decisions and purposes.
Scenario 2: Your Email Marketing Tool
Example: You use Mailchimp to send marketing emails to your customers.
Analysis:
- Who decided to collect customer emails? → You did (for your marketing)
- What's Mailchimp doing? → Following your instructions (send these emails to these people)
- Can Mailchimp decide what to do with your customer data? → No (they process it per your instructions)
Result:
- You're the controller
- Mailchimp is your processor
- You need a DPA with Mailchimp
Scenario 3: Your Analytics Platform
Example: You use Google Analytics on your website.
This one's trickier. Here's why:
Your Role:
- You decided to collect analytics data → You're a controller
- You determine what data to collect → You're a controller
- You decide how to use the insights → You're a controller
Google's Role:
- Google processes data per your implementation → They're your processor
- BUT: Google also uses aggregated data for their own purposes → They're also a controller
Result: This is a joint controller relationship for some processing activities and a controller-processor relationship for others.
This complexity is why Google has specific GDPR documentation explaining these relationships.
Scenario 4: Your SaaS Product
Example: You provide a project management SaaS platform.
Let's say you have 500 business customers who use your platform to manage their projects, assign tasks to their team members, and track progress.
Analysis:
- Who decided to collect the end-user data in your platform? → Your customers (they're managing their teams)
- What are you doing with it? → Providing the service they instructed you to provide
- Can you decide what to do with their team's data? → No (you can only use it to provide the service)
Result:
- Your customers are controllers
- You're a processor
- You need DPAs with all your customers
But wait—what about YOUR business data?
- Data about your customers (company info, billing, usage patterns)? → You're the controller
- Marketing data you collect? → You're the controller
So your SaaS business is typically both controller and processor, just for different datasets.
This dual role creates unique compliance challenges for SaaS platforms, especially around data isolation and contractual clarity.
When You're Both (Dual Roles)
Most modern businesses occupy both roles. Here's a simple framework:
You're a Controller when:
- Processing data for your own business operations
- Making decisions about employee data
- Running your own marketing campaigns
- Managing your customer relationships
- Making business analytics decisions
You're a Processor when:
- Providing services to clients who control the data
- Following specific instructions about data handling
- Processing data that serves your client's purposes, not yours
The key is documenting which role you're playing for each specific processing activity.
Special Case: Joint Controllers
Sometimes two entities jointly determine the purposes and means of processing.
Example: A retail store and a payment processor jointly decide to implement a loyalty program that tracks purchases.
Both entities:
- Decide the program exists
- Determine what data to collect
- Share decisions about how it works
Result: Joint controllers who need a joint controller agreement defining their respective responsibilities.
Article 26 of GDPR requires joint controllers to transparently determine and document their respective responsibilities.
Data Controller Obligations Under GDPR
If you're a controller (even partially), here's what GDPR requires from you.
1. Determine the Lawful Basis for Processing
Before you collect any personal data, you must identify which of the six lawful bases applies:
- Consent
- Contract necessity
- Legal obligation
- Vital interests
- Public task
- Legitimate interests
This is your responsibility as controller. Processors don't choose the lawful basis—you do.
Read our complete guide to choosing your lawful basis to understand this critical decision.
2. Provide Transparent Privacy Information
You must tell individuals:
- What data you collect
- Why you collect it (purpose)
- Your lawful basis
- How long you keep it
- Who you share it with
- Their rights
This typically takes the form of a privacy policy, but might also include collection notices, cookie banners, or consent forms depending on your processing activities.
Learn how to create a comprehensive privacy policy that accurately reflects your role as controller.
3. Enable Data Subject Rights
Individuals have eight rights under GDPR:
- Right to be informed
- Right of access
- Right to rectification
- Right to erasure
- Right to restrict processing
- Right to data portability
- Right to object
- Rights related to automated decision-making
As controller, you're responsible for responding to these requests—even if the data is physically held by a processor. You have one month to respond.
4. Conduct Data Protection Impact Assessments (DPIAs)
When your processing is "likely to result in high risk to individuals," you must conduct a DPIA before you begin processing.
This typically includes:
- Large-scale profiling
- Processing special category data
- Systematic monitoring of public areas
- New technologies with privacy implications
5. Choose and Manage Your Processors Carefully
You're responsible for ensuring any processor you use provides "sufficient guarantees" for data protection.
This means:
- Due diligence before selection
- Written DPAs in place
- Ongoing oversight
- Regular reviews
If your processor has a breach or violates GDPR, you're still liable as the controller.
6. Report Breaches to Authorities
If you experience a data breach likely to result in risk to individuals, you must report it to your supervisory authority within 72 hours.
Your processor must notify you "without undue delay" if they experience a breach affecting your data—but you're responsible for the official notification.
7. Maintain Records of Processing Activities (ROPA)
Article 30 requires controllers with 250+ employees (or certain high-risk processing) to maintain detailed records of all processing activities.
Even if you're not technically required, maintaining these records is best practice and makes compliance dramatically easier.
Data Processor Obligations Under GDPR
If you're acting as a processor for your clients, here are your specific obligations.
1. Process Only Based on Documented Instructions
This is the core of being a processor: you can only process data as specifically instructed by the controller.
If a client asks you to do something with their data that you believe violates GDPR, you're required to inform them. You cannot simply follow unlawful instructions.
2. Implement Appropriate Security Measures
Article 32 requires "appropriate technical and organizational measures" to ensure data security.
As a processor, you're directly liable for security failures—this isn't something you can defer to the controller.
This includes:
- Encryption in transit and at rest
- Access controls and authentication
- Regular security testing
- Incident response procedures
- Staff training on security
3. Assist Controllers with Data Subject Requests
When individuals exercise their rights, the controller typically responds. But as processor, you must:
- Have systems in place to identify and extract individual's data
- Respond to controller requests for assistance "without undue delay"
- Build technical capabilities to support rights (deletion, portability, etc.)
Many SaaS contracts now include specific SLAs for responding to these controller requests.
4. Notify Controllers of Breaches
If you experience a data breach involving controller's data, you must notify them "without undue delay."
The controller then has 72 hours from when they became aware to notify authorities—so your speed directly impacts their compliance.
This is why processor contracts often specify breach notification timelines (e.g., "within 24 hours of discovery").
5. Delete or Return Data When Processing Ends
When your contract ends or the controller requests it, you must:
- Delete all personal data, OR
- Return it to the controller
- Delete existing copies (unless legal requirements mandate retention)
This is non-negotiable. You cannot keep data "just in case" or for your own purposes.
6. Only Use Approved Sub-Processors
If you need to use other service providers (sub-processors), you must:
- Get controller's prior authorization (general or specific)
- Ensure the sub-processor meets the same obligations
- Remain fully liable to the controller
Many controllers require notification and opt-out rights before you add new sub-processors.
7. Make Information Available for Audits
Controllers have the right to audit their processors. You must:
- Allow audits and inspections
- Provide information demonstrating compliance
- Cooperate with controller's auditors
Real-World Examples: Controller vs Processor Scenarios
Let me give you more concrete examples across common business situations.
SaaS Platform Scenarios
Scenario: Customer relationship management (CRM) software
- Your customer uses your CRM to manage their sales pipeline
- The data: Contact details and interaction history of your customer's leads
- Your role: Processor (you're providing the tool, they control the data)
- Their role: Controller (they decide what data to track and why)
- What you need: DPA with each customer
Scenario: Your own CRM for your sales team
- You use a CRM to manage your sales pipeline
- The data: Contact details of prospects interested in your product
- Your role: Controller (you decided to collect this data for your sales process)
- The CRM vendor's role: Processor (they're providing the tool)
- What you need: DPA with the CRM vendor
E-commerce Scenarios
Scenario: Payment processing
- You run an online store
- Stripe processes payments
- Customer data flows: You send payment information to Stripe
- Analysis:
- You determine what payment data to collect → Controller
- Stripe processes payments per your instructions → Processor
- BUT: Stripe also uses data for fraud detection → Stripe is also a controller
- Result: You're a controller, Stripe is both processor (for payment processing) and controller (for fraud detection)
- What you need: DPA with Stripe covering their processor activities
Scenario: Order fulfillment
- You sell products, ShipStation manages fulfillment
- The data: Customer shipping addresses
- Analysis:
- You collected addresses for your business → Controller
- ShipStation processes them to fulfill your orders → Processor
- Result: DPA required
Marketing Tool Scenarios
Scenario: Email marketing platform
- You use SendGrid to send newsletters
- Analysis:
- You decided to send newsletters → Controller
- You chose what data to collect → Controller
- SendGrid sends emails per your instructions → Processor
- Result: You're controller, SendGrid is processor, DPA required
Scenario: Social media advertising
- You run Facebook ads targeting specific audiences
- Analysis: This gets complex:
- You decide to run ads → You're a controller
- Facebook determines how targeting works → Facebook is a controller
- Facebook processes data to deliver your ads → Facebook is also a processor
- Result: Joint controller arrangement with specific responsibilities defined by Facebook's terms
Cloud Service Scenarios
Scenario: Cloud hosting (AWS, Google Cloud, Azure)
- You host your application on AWS
- Customer data is stored in your AWS databases
- Analysis:
- You decide what data to store and how → Controller
- AWS provides infrastructure per your configuration → Processor
- AWS cannot access your data contents → Pure processor relationship
- Result: DPA with AWS (they provide standard DPAs)
Scenario: Cloud collaboration (Google Workspace, Microsoft 365)
- You use Google Workspace for your company
- Employee data includes emails, documents, calendar
- Analysis:
- You decided to use these tools for your business → Controller
- Google provides services per your instructions → Processor
- BUT: Google may use limited data for service improvement → Limited controller role
- Result: Primarily processor relationship with specific controller aspects documented in Google's terms
Data Processing Agreements (DPAs): What You Need to Know
Now that you understand the roles, let's talk about the contract that formalizes processor relationships.
When DPAs Are Required
A DPA is mandatory under Article 28(3) whenever:
- A controller engages a processor
- The processing involves personal data
- GDPR applies to the processing
There are no exceptions. If you're using a processor or acting as one, you need a written DPA.
I've seen businesses assume that:
- "We have a Terms of Service, that's enough" → Wrong
- "The vendor is GDPR-compliant, so we're covered" → Wrong
- "It's just a small amount of data" → Still wrong
The DPA is non-negotiable.
What Must Be Included in a DPA
Article 28(3) lists nine mandatory elements:
- Subject matter and duration of the processing
- Nature and purpose of the processing
- Type of personal data and categories of data subjects
- Controller's obligations and rights
- Processor must:
- Process only on documented instructions
- Ensure processor staff are bound by confidentiality
- Implement appropriate security measures
- Respect sub-processor conditions
- Assist with data subject rights requests
- Assist with security and breach obligations
- Delete or return data at end of processing
- Make information available for audits
- Immediately inform controller if instructions violate GDPR
These aren't optional clauses—each one must be addressed.
Controller Instructions Document
Many DPAs reference a separate "Processing Instructions" document that details:
- Specific processing activities authorized
- Data types involved
- Security requirements
- Retention periods
- Sub-processor permissions
This keeps the DPA as a framework agreement while allowing the instructions to be updated without renegotiating the entire contract.
Sub-Processor Provisions
Your DPA must address sub-processors:
- Specific authorization: Controller approves each sub-processor individually
- General authorization: Processor can add sub-processors with notification and opt-out rights
Most processors prefer general authorization with 30-day notice periods.
Standard Contractual Clauses (SCCs)
If your processor is outside the EU/EEA (or you're processing data for EU/EEA controllers from outside), you also need Standard Contractual Clauses for the international transfer.
These are separate from but often included alongside the DPA.
Template vs Custom DPAs
Here's a practical question I get constantly: "Can I use a DPA template?"
The reality:
- Large vendors (AWS, Google, Microsoft) provide standard DPAs → You accept their terms
- Mid-size vendors often have negotiable DPAs → You can request changes
- Small vendors may not have DPAs at all → You need to provide one
Most businesses end up with a mix:
- Accepting standard DPAs from major vendors
- Using a template for smaller vendors who lack their own
- Custom negotiation with key strategic vendors
How PrivacyForge Simplifies DPA Creation
Here's where I'll be direct about what we do: Creating compliant DPAs manually is time-consuming and error-prone.
PrivacyForge automatically generates Data Processing Agreements that:
- Include all nine mandatory Article 28 clauses
- Are tailored to your specific processing activities
- Account for sub-processor relationships
- Integrate with your Records of Processing Activities
- Update as regulations evolve
Instead of spending hours with legal templates or paying thousands for attorney-drafted contracts, you get compliant DPAs in minutes.
Get started with automated DPA generation →
Common Mistakes and How to Avoid Them
Let me share the mistakes I see repeatedly—and how to avoid them.
Mistake 1: Misidentifying Your Role
The Problem: Assuming you're just a controller or just a processor, when you're actually both.
Example: A SaaS company treats all their data as if they're a processor for clients, but then uses customer data for their own business analytics without proper contractual authority.
How to Avoid It:
- Map out each data processing activity separately
- Ask the "whose purpose does this serve?" question for each
- Document your role for each specific processing activity
- Update your privacy documentation to reflect these different roles
Mistake 2: Missing DPA Requirements with Vendors
The Problem: Using processors without DPAs in place.
Real scenario: An e-commerce business used 12 different SaaS tools. Only 3 had DPAs in place. The other 9 were compliance violations waiting to happen.
How to Avoid It:
- Audit all your current vendors
- Request DPAs from each processor
- Don't onboard new vendors without DPA review
- Maintain a vendor register with DPA status
Mistake 3: Incorrect Privacy Policy Language
The Problem: Privacy policies that don't accurately reflect your role.
Example: A policy that says "we are the controller of your data" when you're actually a processor for B2B clients.
How to Avoid It:
- Separate privacy policies for different roles (one for your role as controller, one explaining your role as processor)
- Use precise language about your role in each context
- Update policies when your processing activities change
When you're acting as both controller and processor, consider separate privacy documentation for each role to avoid confusion.
Mistake 4: Inadequate Sub-Processor Management
The Problem: Processors who add sub-processors without controller notification or authorization.
Real case: A data analytics processor started using a new cloud provider without notifying its customers. One customer had explicitly prohibited processing in that jurisdiction. The processor breached its DPA.
How to Avoid It: As a processor:
- Maintain a public list of current sub-processors
- Implement notification procedures before changes
- Provide opt-out mechanisms
- Document controller approvals
As a controller:
- Review processor's sub-processor lists
- Set clear geographic or vendor restrictions
- Monitor for sub-processor changes
- Exercise opt-out rights when necessary
Mistake 5: Weak Breach Notification Procedures
The Problem: No clear process for processor-to-controller breach notifications.
What happens: A processor discovers a breach but delays notification while investigating. By the time the controller learns about it, the 72-hour notification window has passed.
How to Avoid It:
- Define specific breach notification timelines in DPAs
- Establish clear communication channels
- Create breach escalation procedures
- Test the process periodically
Your Next Steps for Compliance
Now that you understand the controller/processor distinction, here's your action plan.
Step 1: Conduct a Role Assessment
Use this worksheet approach:
For each data processing activity:
- What personal data is involved?
- What's the purpose of processing this data?
- Who decided to process it for this purpose?
- Who determines how it's processed?
- Can you decide what to do with it independently?
Create a simple table:
| Processing Activity | Data Types | Purpose | Our Role | Other Party | DPA Needed? |
|---|---|---|---|---|---|
| Customer orders | Name, email, address | Fulfill orders | Controller | - | No |
| Email marketing | Email addresses | Marketing | Controller | Mailchimp | Yes |
| Payment processing | Payment details | Process payments | Controller | Stripe | Yes |
| Client project data | Various | Provide SaaS service | Processor | Clients | Yes |
Step 2: Document Your Findings
Update or create:
- Records of Processing Activities (ROPA) that identify your role for each processing activity
- Privacy policies that accurately reflect your roles
- Vendor register showing all processor relationships
Step 3: Review and Secure Required DPAs
For processors you use:
- Request DPAs from each vendor
- Review for Article 28 compliance
- Ensure sub-processor provisions are acceptable
- Execute and store signed agreements
For clients where you're the processor:
- Provide compliant DPAs
- Update service agreements to reference DPAs
- Clarify processing instructions
- Document any sub-processors
Step 4: Implement Ongoing Management
Create systems for:
- Reviewing new vendor relationships before signing
- Monitoring sub-processor changes from your processors
- Reviewing and renewing DPAs periodically
- Training staff on controller/processor distinctions
Step 5: Build Documentation Capabilities
Compliance isn't a one-time project—it's ongoing. You need systems that:
- Generate required documentation accurately
- Update as your business evolves
- Reflect regulatory changes
- Scale with your growth
This is exactly why we built PrivacyForge.
Stop Guessing Your GDPR Role
Understanding whether you're a controller or processor isn't academic—it's the foundation of your entire compliance program.
Get it wrong, and you're:
- Meeting the wrong obligations
- Missing critical contractual requirements
- Exposing yourself to enforcement risk
- Creating liability you didn't need to have
Get it right, and you have:
- Clear compliance roadmap
- Proper contracts in place
- Reduced liability exposure
- Confidence in your privacy program
But here's the challenge: Even after reading this guide, implementing everything correctly takes significant time and expertise. You need to create DPAs, update privacy policies, maintain records, and keep everything current as regulations evolve.
PrivacyForge eliminates this complexity.
Our platform:
- Automatically identifies your role based on your actual business operations
- Generates compliant DPAs tailored to your specific processing relationships
- Creates privacy documentation that accurately reflects your controller/processor roles
- Updates everything as regulations change
- Maintains your Records of Processing Activities with role identification
Stop spending weeks trying to figure out controller/processor compliance manually.
Related Articles
Ready to get started?
Generate legally compliant privacy documentation in minutes with our AI-powered tool.
Get Started Today

